Welcome to WebmasterWorld Guest from

Forum Moderators: coopster & jatar k

Message Too Old, No Replies

Basic, Just cant see it.



5:08 pm on Apr 16, 2006 (gmt 0)

10+ Year Member

is there a problem with this

include 'dbconnect.php';

$result = mysql_query("SELECT * FROM character where uid = '1'", $link) or die ("query 1: " . mysql_error());
$row = mysql_fetch_array($result);

Im getting this error

query 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'character where uid = '1'' at line 1




5:46 pm on Apr 16, 2006 (gmt 0)

5+ Year Member

How did you define uid field Ė as string or number? I am guessing as a number, hence I donít think you need single quotes around itís value. So it should be something like:

$result = mysql_query("SELECT * FROM character WHERE uid=1", $link) or die ("query 1: " . mysql_error());

I am relative newb to PHP and MySQL so take this with grain of saltÖ.



5:56 pm on Apr 16, 2006 (gmt 0)

10+ Year Member

Take this with a pinch of salt too, but I believe that 'character' is a reserved word in MySQL. Running a similar query here gives the same error, as opposed to the 'db.table does not exist'.

Check the MySQL manual for reserved words.


5:59 pm on Apr 16, 2006 (gmt 0)

10+ Year Member

Found the reference:

The words in the following table are explicitly reserved in MySQL 5.0. At some point, you might update to a higher version, so it's a good idea to have a look at future reserved words, too. You can find these in the manuals that cover higher versions of MySQL. Most of the words in the table are forbidden by standard SQL as column or table names (for example, GROUP). A few are reserved because MySQL needs them and (currently) uses a yacc parser. A reserved word can be used as an identifier if you quote it.

Among the words is indeed 'character'.



6:29 pm on Apr 16, 2006 (gmt 0)

WebmasterWorld Senior Member dreamcatcher is a WebmasterWorld Top Contributor of All Time 10+ Year Member

Try using back ticks:

"SELECT * FROM `character`...



7:01 pm on Apr 16, 2006 (gmt 0)

10+ Year Member

got it, just changed the table name, thanks all

Featured Threads

Hot Threads This Week

Hot Threads This Month