Jump to content
xisto Community

8ennett

Members
  • Content Count

    435
  • Joined

  • Last visited

Everything posted by 8ennett

  1. It's looking really good, it took five minutes for the site to load though since I've got very limited bandwidth but i'm on a 20kbs connection at the minute. Maybe create a basic html version for lower bandwidth users? Aside from that the new Xisto looks great!
  2. I doubt we will ever see actual intelligence in an artificially constructed brain any time soon. In order to create full awareness you would have to mimic billions of chemical reactions per second. Imagine each one of those chemical reactions being a piece of programming code running. Not only do we lack the technology to mimic all those processes per second, but we also lack the knowledge of what every single chemical reaction is actually doing. In fact our understanding of the human brain is so limited at our current rate of educational development (assuming it will continue to advance geometrically) it could take a further 50,000 years before we have fully mapped over half the human brain. Now obviously we don't know what exactly makes what we refer to as a soul, but it is a safe assumption that most of the processes within our mind are responsible as a whole. This is why when people lose x%of their brain due to damage etc. they seem to lose all sense of self, the ability to process information properly etc. If we were ever to develop true intelligence capable of independent thought processes then it is highly unlikely this consciousness will be given any form of power or control over systems that can ultimately overthrow the human race as a species. It would be treated as any other intelligent being, with suspicion and curiosity. As a race we do not like to leave our lives in the hands of anyone apart from ourselves and have trouble trusting each other as it is. I suppose the point i'm trying to make here is, don't believe everything you see in the movies!
  3. I also created one a couple of years back however facebook are constantly changing their api and if you want to keep up with the changes then you need to constantly change around your coding and it's a none stop battle to keep your application up to date with facebook. You can write basic apps fine and it may take a year to become deprecated but when i say basic i mean simply display someones name and how old they are. I wrote a basic mafia-based game facebook app and really couldn't be bothered carrying it on because I tried to make it a good game and they kept changing the api around. It makes it impossible to make a decent app. Found out later fans of my old game started up their own and copied my idea and carried it on, called mafia wars or something like that now, bl**dy ripoffs.
  4. Unfortunately though if you want it to be attractive, have a lot more functionality and draw more players it is recommended you have a basic knowledge of html, css (not essential but definately worth learning) and mysql queries (INSERT INTO and SELECT * FROM) and also have a good working knowledge of php. A lot of people recommend javascript as well but that's really only useful for additional aesthetics and not much else.
  5. Just to point out, the last two code boxes aren't displaying the php tags properly so watch out for that. It's because I'm having to write all my posts in html as I'm using firefox and on this forum there seems to be a problem with firefox so you can only write in html. I refuse flatout to use IE for any reason, I even debug my websites using IE Tab firefox addon (which still doesn't work on this forum). So yeah, the opening php tags on the last two code boxes, watch out!I also should have added, it was a good idea to MD5 your password which I forgot to do above, but also when inserting into the table and selecting from the table use the PASSWORD() SQL command as well. Here's what I mean:"INSERT INTO info (username, password, email, level) VALUES ('".$name."', PASSWORD('".$pass."'), '".$email."','1')"and for the login script update the query like so:"SELECT id FROM accounts WHERE username='".$user."' AND password=PASSWORD('".$pass."')"This is just another form of encryption and makes your script that little bit more secure as MD5 is actually crackable.
  6. Ok, firstly that SQL export you have shown me, that is usually how I construct my tables, I find it's a lot faster than constructing one using phpMyAdmin or some similar software. Try using the InnoDB engine instead of MyISAM, although MyISAM is a bit faster, InnoDB offers you the best reliability which is really what you want from a user system. Try deleting your current table and run the following SQL query to reconstruct it CREATE TABLE `accounts` ( `id` int(255) NOT NULL auto_increment, `username` varchar(50) NOT NULL, `password` varchar(50) NOT NULL, `email` varchar(100) NOT NULL, `level` varchar(50) NOT NULL, `fname` varchar(50) NOT NULL, `lname` varchar(50) NOT NULL, `friends` mediumtext NOT NULL default '', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; I've also added the field 'id' and made it the primary key. This is important because it creates a unique identifier for each of your sites users. You can just use the username if you want, but by using the id field instead it gives you the option to let your users change their username later on. Also I've changed the engine to InnoDB. Now, in your login script you will need to retrieve the users unique id. This is important because we need that id to create our user information in the session variable. So, process your login details like so (adjust the POST variables to the proper values): session_start(); include('functions.php'); opendb(); if (isset($_POST['username']) && isset($_POST['pass'])){ $user = mysql_real_escape_string($_POST['username']); $pass = mysql_real_escape_string($_POST['pass']); $login = mysql_query("SELECT id FROM accounts WHERE username='".$user."' AND password='".$pass."'"); if (mysql_num_rows($login) == 1){ $login = mysql_fetch_array($login); $_SESSION['id'] = $login['id']; header('Location: home.php'); exit; } else { echo 'Wrong username/password!'; } } closedb(); I'll run you through the two functions opendb() and closedb() after the next piece of code. Right, next you don't want to create a function to display a greeting text. Instead what you want to do is create a function called updateHeader() and we are going to put this in to a new php document called functions.php. Now I always do this, it is a php file which contains every single custom function and class I have made for the site and simply include it on every page of my site. Now this updateHeader() function is going to retrieve your users information on every page they visit while logged in and put it in to the session variable. functions.php function opendb(){ mysql_connect ('localhost', 'root', 'password'); mysql_select_db ('mydatabase'); } function closedb(){ mysql_close(mysql_connect ('localhost', 'root', 'password')); } function updateHeader(){ if (isset($_SESSION['id'])){ $user = mysql_query("SELECT * FROM accounts WHERE id='".$_SESSION['id']."'"); $_SESSION = mysql_fetch_array($user); } else { header('Location: login.php'); exit; } I've also created two new functions two new functions for opening and closing your database connection. This is very useful if you are switching between using your test server at home and your internet web host. It means that you only need to change the address, username and password in your functions.php file instead of every single php file that needs a db connection. Simply opendb() at the start of every page and closedb() at the end of every page. Now we have our updateHeader() function we can start building the home.php file. IT IS IMPORTANT TO REMEMBER: The very first thing you need to do on each page is session_start() otherwise your session variable won't be set. Every single page that requires the user to be logged in to view should look like this: sessions_start(); include('functions.php'); opendb(); updateHeader(); // All PHP for the page can go here now ?> And HTML and whatnots can go here closedb(); ?> And now you can display your greeting text like so in home.php: sessions_start(); include('functions.php'); opendb(); updateHeader(); ?> <html> <head> <title>My Site </title> </head> <body> <?php echo 'Hello '.$_SESSION['username'].' and welcome to My Site'; ?> </body> </html> closedb(); ?> Now when ever you need to either display a users information or check their security level, or even update their information you can echo, use if() or query using their id using the $_SESSION variable to check their information. Hope this helps you, it did take me a while to write lol
  7. I have absolutely no idea why there is a quote from yordan in the above reply, maybe it's a glitch in the forums?
  8. Thanks for the advice on the game, but also you don't need to start topics just for the sake of making topics. Why not try perhaps writing a few tutorials in the How-To section, or even running through and trying a few tutorials and leaving feedback or asking for help if you get stuck. It's a lot better to create and reply to posts which are going to be a benefit to others in the future instead of posting for the sake of getting myCents.
  9. I'm not going to post the sites address, at least not until it's finished since nobody can get in until i re-activate the registration form. Also, you can't advertise your own site in this forum anyway, it's against the rules lol also the name will stand for now although once the game is up and running I might run a competition in it for a new game name.
  10. Ok, so the deal is I'm creating an online text-based MMORPG which many of you have probably encountered in the past. Now I'll run through the ideas I've had (and most of which are already built) for the game and was wondering if anyone else had any input. The game is called Drug Mann and is obviously a criminal-based game. You each start at level 1 and have to work to build up your stats. There are many way to earn money in the game, and you can select a special skill which gives you advantages in certain areas, like drug farmer, loan shark, hired muscle, drug trader and so on. One of the features I've built in is similar to the computer in the game Grand Theft Auto 4, you can visit websites in a nifty little browser window. The websites are stored in the game, however if you type in a web address that isn't stored in the game it will then search the real internet. So for example I have an in-game site called notepad.com so if you type in that address it will go to my game site and not the real notepad.com but google however is not in the game so you will go to the real google page. I wrote the computer using javascript and a frame inside a table with the image of a computer monitor around the outside, so the actual displayed page is a frame but not the browser bar or the monitor image. Through this computer you can access all sorts, and decided to put my forums and chatrooms on websites instead of on the games menu for "realism" lol also there is an email website that is tied in to the game itself, so if you get a new message then the game will alert you and give you a quick link to load the email website. The next feature I'm currently building is drug farming. You can rent several properties per city and each property has so much space, you can expand the farm inside the property to fill this space as long as you can afford to maintain it (materials, weekly rent, utilities) and once the drugs have grown you can harvest and process then sell and grow more in the same equipment, however there is a chance that a farm can be raided by the police. Also if you're a drug farmer then obviously your crops will grow faster. Obviously I've built a casino for the game, however there will be limits on how much you can wager per table depending on your casino membership status (monthly fee for each level). The bank is interesting because you can only deposit up to 500k in your personal account (also you can earn daily interest up to 500k) and after that you need to open business accounts which depending on the plan can hold up to so much and will be charged weekly. There is also a chance of accounts being seized but if you're fully paid up with the local authorities you have a chance of being warned which accounts are going to be seized and drain them before it happens. You can also have an unlimited number of business accounts. You can flirt once a day with people, if you start dating someone you earn double experience for flirting with that one person and if you are married you can earn triple experience. You can go to prison for crimes, and depending on the crime the time can vary and the level of security you are put in. You can offer contracts for people to bust you out if you don't want to wait however there is obviously a chance of being caught depending on the level, speed etc of the contract taker. You can also go to hospital if you are "killed" and in this game there is no magic potion that refills your health to full. You can take some speed or possibly meth and maybe get your health up to 25% but no more than that. Your health and energy refill 5% every five minutes and stamina refills 14% every hour. There is obviously the option to attack people, and there will be weapons and armour, strength, defense and speed etc. But I'm toying around with ajax at the minute to create a live battle system if both people are online, you know you get the chance to attack, use item or run away. Could be interesting, and am already building it in to a battle arena where you can contend against others for money, glory etc. Also there are different houses you can buy, these affect your stamina and also you can add things on to the house like your own training gym instead of paying for a membership, kennels to keep your dogs for fighting comps, stables where you can keep and train your race horses. I'm building a race track where you can enter your horse for a fee and there are several AI horses as well, and every half an hour a race starts, you can enter your horse to race or you can bet on a horse to win. If someone attacks you and they are on the ten most wanted for the city you are currently in (most kills overall gets you in the top ten) then you have about 10 minutes to "snitch" on them, if they get arrested you get a payout and they go to prison, but if they fail to convict then you'd better run and hide. I'm also designing a mission system. Basically you go to a website or a bar and pick up freelancer missions to do around the normal game environment, such as pick up a briefcase in the gym in Moscow and fly it to New York between 3pm and 4pm (game time is GMT) on tuesday the 13th, but when you get there you have to fight off about 5 special agents and so on. Once the system has been made the possibilities for missions will be limitless and extensive, and unlike other games I can write several new missions a week at least to keep the game refreshing and keep it from becoming stagnant. Even create story strings that can play out over months. I appear to have gone on quite a bit, but if anyone has any other great ideas that they think would suit this game then please tell me.
  11. Could you let us know if this worked for you or not, just so we know if the problem has been resolved for anyone else having the same problem and is reading this.
  12. Ok, I've taken your code and modified it around a little. Notice I've assigned the mysql_real_escape_string() to variables otherwise it's just pointless. Also I've used mysql_select_db() instead of including it in the query. Most websites only require one database as it is so there really isn't any need for others unless you have a catalogue of inventory or something. Also for the mysql functions I've added 'or die()' to the end instead of using the if statements, it just keeps the code more compact and easier to manage. I haven't tested the code out yet but looking over it I think it should be right. Try it out and if it still doesn't work then export your database structure to a SQL file and I'll see if the problem is there. <?php if (isset($_POST['username']) && isset($_POST['password']) && isset($_POST['email'])){ $link = mysql_connect('localhost:8889','root','root') or die('Connection Error: ' . mysql_error()); mysql_select_db('accounts') or die('Select DB Error: ' . mysql_error()); $name = mysql_real_escape_string($_POST['username']); $pass = mysql_real_escape_string($_POST['password']); $email = mysql_real_escape_string($_POST['email']); mysql_query("INSERT INTO info (username, password, email, level) VALUES ('".$name."', '".$pass."', '".$email."','1')") or die ('Query Error: '.mysql_error()); mysql_close($link) die('Close Connection Error: ' . mysql_error()); } else { echo 'You need to submit the form data!'; } ?>
  13. Right, again you've got a problem with your speech marks in the query, try the following; INSERT INTO `accounts`.`info` (`username`, `password`, `email`, `level`) VALUES ('mysqltest',' testing123', 'test@mysql.com','1'); Also can you tell us if the other solution worked for you or not just so we know if the problem has been resolved yet?
  14. The problem is your backslashes just before the double speechmarks, php assumes it's part of the text string and processes like so. Also for security's sake you want to mysql_real_escape_string() your $_POST variables before using them in a SQL query otherwise you are vulnerable to SQL injection!
  15. Ok, first thing you want to do is complete the search query like this: "SELECT make, description FROM cars WHERE make='".$searchtype."' AND description LIKE '".$searchterm."'"; So here you are selecting both make and description from the cars table where the make is your search type AND description contains the search term Now to display the result it would probably be easiest to use the WHILE function and display in a table like so: echo '<table><tr><td><strong>Make</strong></td><td><strong>Description</strong></td></tr>'; while ($row = $result->fetch_assoc()) { echo '<tr><td>'.$row['make'].'</td><td>'.$row['description'].'</td></tr>'; } echo '</table> When all you are doing is running through a list of rows from a sql query then while is always going to be the easiest when used with fetch_assoc(). There's no point in making it more complicated otherwise you can end up confusing yourself. So replace the query in $query with the above and replace the for{} function with the while{} function i've given you above, making sure those echoes just before and just after while{} are there as well. That should properly query the database for you with the intended result and display them in a nice little table. Don't forget, once you've done this you may want to think about building a pagination system so it only displays X amount of results on the page and there are 2 buttons at the bottom "Next Page" and "Previous Page", if you need help with that though then just let me know. It just helps the server and the users browser in case 50,000 results are returned and it's working like made to display them all.. One last piece of advice as well. When building forms to submit data, I find it's easiest to submit them to the page they are on, then all you need to do is add an if statement to split up the code. if (isset($_POST['submit'])){ // Process form data here } else { // Display web form here } These just makes it easier to manage php documents on your server once they start to build up, tidier this way.
  16. Maybe add it to the list of improvements for the next release of firefox on the mozilla site, after all it is a developers project. I've also noticed that when you load a darker coloured website in IE the shading is slightly darker than it is in firefox, not by much but I noticed it on my own site when working with browser compatibility. Doesn't show up as much if you use the IE Tab firefox extension but is definately noticeable when opening a new process of IE.
  17. I came across this email validation script about a year back on google but have been unable to find the group that created it since, although it seems to be a very popular script now. It is probably the best way to verify an email address is valid. class EmailAddressValidator { /** * Check email address validity * @param strEmailAddress Email address to be checked * @return True if email is valid, false if not */ public function check_email_address($strEmailAddress) { // If magic quotes is "on", email addresses with quote marks will // fail validation because of added escape characters. Uncommenting // the next three lines will allow for this issue. //if (get_magic_quotes_gpc()) { // $strEmailAddress = stripslashes($strEmailAddress); //} // Control characters are not allowed if (preg_match('/[\x00-\x1F\x7F-\xFF]/', $strEmailAddress)) { return false; } // Split it into sections using last instance of "@" $intAtSymbol = strrpos($strEmailAddress, '@'); if ($intAtSymbol === false) { // No "@" symbol in email. return false; } $arrEmailAddress[0] = substr($strEmailAddress, 0, $intAtSymbol); $arrEmailAddress[1] = substr($strEmailAddress, $intAtSymbol + 1); // Count the "@" symbols. Only one is allowed, except where // contained in quote marks in the local part. Quickest way to // check this is to remove anything in quotes. $arrTempAddress[0] = preg_replace('/"[^"]+"/' ,'' ,$arrEmailAddress[0]); $arrTempAddress[1] = $arrEmailAddress[1]; $strTempAddress = $arrTempAddress[0] . $arrTempAddress[1]; // Then check - should be no "@" symbols. if (strrpos($strTempAddress, '@') !== false) { // "@" symbol found return false; } // Check local portion if (!$this->check_local_portion($arrEmailAddress[0])) { return false; } // Check domain portion if (!$this->check_domain_portion($arrEmailAddress[1])) { return false; } // If we're still here, all checks above passed. Email is valid. return true; } /** * Checks email section before "@" symbol for validity * @param strLocalPortion Text to be checked * @return True if local portion is valid, false if not */ protected function check_local_portion($strLocalPortion) { // Local portion can only be from 1 to 64 characters, inclusive. // Please note that servers are encouraged to accept longer local // parts than 64 characters. if (!$this->check_text_length($strLocalPortion, 1, 64)) { return false; } // Local portion must be: // 1) a dot-atom (strings separated by periods) // 2) a quoted string // 3) an obsolete format string (combination of the above) $arrLocalPortion = explode('.', $strLocalPortion); for ($i = 0, $max = sizeof($arrLocalPortion); $i < $max; $i++) { if (!preg_match('.^(' . '([A-Za-z0-9!#$%&\'*+/=?^_`{|}~-]' . '[A-Za-z0-9!#$%&\'*+/=?^_`{|}~-]{0,63})' .'|' . '("[^\\\"]{0,62}")' .')$.' ,$arrLocalPortion[$i])) { return false; } } return true; } /** * Checks email section after "@" symbol for validity * @param strDomainPortion Text to be checked * @return True if domain portion is valid, false if not */ protected function check_domain_portion($strDomainPortion) { // Total domain can only be from 1 to 255 characters, inclusive if (!$this->check_text_length($strDomainPortion, 1, 255)) { return false; } // Check if domain is IP, possibly enclosed in square brackets. if (preg_match('/^(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])' .'(\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}$/' ,$strDomainPortion) || preg_match('/^\[(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])' .'(\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}\]$/' ,$strDomainPortion)) { return true; } else { $arrDomainPortion = explode('.', $strDomainPortion); if (sizeof($arrDomainPortion) < 2) { return false; // Not enough parts to domain } for ($i = 0, $max = sizeof($arrDomainPortion); $i < $max; $i++) { // Each portion must be between 1 and 63 characters, inclusive if (!$this->check_text_length($arrDomainPortion[$i], 1, 63)) { return false; } if (!preg_match('/^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|' .'([A-Za-z0-9]+))$/', $arrDomainPortion[$i])) { return false; } } } return true; } /** * Check given text length is between defined bounds * @param strText Text to be checked * @param intMinimum Minimum acceptable length * @param intMaximum Maximum acceptable length * @return True if string is within bounds (inclusive), false if not */ protected function check_text_length($strText, $intMinimum, $intMaximum) { // Minimum and maximum are both inclusive $intTextLength = strlen($strText); if (($intTextLength < $intMinimum) || ($intTextLength > $intMaximum)) { return false; } else { return true; } } } And here is the code to use this function $validator = new EmailAddressValidator; if ($validator->check_email_address($_POST['email'])) { // If it is a valid email then run this section } I really haven't found any other method that is better for validating email addresses. Give it a try and see what you think!
  18. Ok from the sound of it you have create a table with seperate fields for each car type, and when you try to insert into the table there is no default value set for each make of car. Try creating a single table for all the cars and just use different values, or even use you the enum to create different values. Try creating the table like this: CREATE TABLE 'vehicles' ( `id` int(10) NOT NULL auto_increment, `make` varchar(10) NOT NULL default 'Honda', PRIMARY KEY ('id') ) I know there are more fields but I haven't seen your table structure. INSERT INTO vehicles (make) VALUES ('Honda'); INSERT INTO vehicles (make) VALUES ('Ford'); INSERT INTO vehicles (make) VALUES ('Acura'); Then all you need to do is add each car type in to the 'make' field and simply query the make of the car to return the rows from the table. SELECT * FROM vehicles WHERE make='Honda';
  19. excellent point yordan, perhaps build in a pagination system using the GET variables, eg. yoursite.com?page=1 and process the page number to use the LIMIT function in your query.
  20. Yes, the answer to this problem is you need to use a while loop. You can use any other loop as well but i find the while loop the easiest to use for multiple results. ok so let's assume there are four different entries under Honda, and the fields listed are type, id, colour and reg (I know they're not but for the sake of an example). So here is how we would process the data. We need to construct the outside of the html table before looping the results inside the table. I'm assuming you know how to use tables with and . Once the shell of the table has been constructed you need to loop the data inside the table using mysql_fetch_assoc inside a loop. Here's a full example of what I mean. $result = mysql_query("SELECT * FROM cars WHERE model='Honda'"); echo '<table>'; while ($row = mysql_fetch_assoc($result)){ echo '<tr> <td>'.$row['type'].'</td> <td>'.$row['id'].'</td> <td>'.$row['colour'].'</td> <td>'.$row['reg'].'</td> </tr>'; } echo ' </table> '; So what is happening now is, the variable $row will now be used as an array per row per loop in the while function. If there were three result in the db for the query then it will loop three different rows in the table with four columns all the way down. Like I said, the while loop is probably the easiest to use for multiple rows in a db query but you can use the for and foreach loops as well. Hope that was what you were looking for! (Also I'm not sure if it was your terminology or you are actually using different tables for each model, but if instead of using different tables per model use the same table and just add an additional field for the type, trust me in the long run it will make your db much more organised and streamlined)
  21. I'm a bit too busy to be signing up for any more forums at the moment, my site needs to be up and running within 6 months and it's a lot of work for just one person. In fact I've just finished perfecting this shoutbox, included smileys, different chat rooms with one script, alerts when people enter or leave the chat and even whispering to others inside the chat window. Anyway, without being able to see the full structure of the shoutbox (eg. PHP) I doubt I could offer any advice on fixing it anyway. I'm sure opaque will get around to fixing it if he has the time. It's probably a problem with the query.
  22. I've just noticed a problem in the shoutbox.js code, where it says 'shoutbox.php?l=sendshout=true' remove the l= so it looks like 'shoutbox.php?sendshout=true' My mistake!
  23. Thanks for adding the quote tags for me, now to work out this negative myCENTS lol luckily I've got enough in my billing area to cover my hosting fee's for the next few months lol
  24. There seems to be a rule, you're either an Amazon fan or and eBay fan. Personally I prefer to use ebay. It's easy to spot the scammers when you know how, and even easier to spot the inexperienced who you get the really great deals off. Unfortunately, I used Amazon a total of 3 times and each time was scammed in to buying say the manual for a phone instead of the phone itself. I definately prefer to use ebay, its rating system is fair and just and gives you a great deal of information about the seller, including if they usually correct their mistakes or just ignore the problems they cause. I was once a large seller on ebay as well and it's a good, easy way to produce an income. I'm without doubt an ebay man, although Amazon is not without its charms. Just unfortunate I suppose I was ripped off when I was. It's all very well saying eBay sucks, but it's really more a matter of taste. It's what you prefer and what you are comfortable with. I could turn around and say Amazon blows big time, but really because it's so popular then can't do really can it? It's just I prefer to use eBay instead. To compare the two sites though really is not prudent. For instance eBay is an auction website, Amazon is more of a flea market. From what I understand, Amazon used to have an auction side to it, but it failed miserably and was closed down soon after opening. This is probably due to the two seperate experiences of the sites. Amazon is for those who want to take it slowly, browse, and get a fixed price on everything. eBay adds an element of suspense to the shopping experience. Will I get this item for less, will I end up paying more? Will I sell it for a fortune, will it not sell at all. It's a great experience for those that enjoy that sort of thing. Amazon also has far less users than eBay which is why it can take a fair amount of time to sell certain items. You also need to get all kinds of different permissions and wait for wait for listings to be approved which eBay avoids by offering better protection on payments and stricter punishments for non-payments/non-delivery. Ok so in eBay you have to pay for your listing before you sell it, and Amazon take the fee off after it has sold, but again the eBay fees depend on what you are selling and ultimately you can end up making a considerable profit, much more than you would expect to make off Amazon. I know I have a biasted view on the side of eBay, but I think it's about how you want your shopping experience to be. eBay definately for adrenaline junkie bargain hunters, Amazon for people who play it slow and safe.
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.