Mysql "insert into;SQL语法错误问题


mysql "insert into" SQL syntax error problem

这是PHP代码:

$stringquery = "INSERT INTO sikurim(name, title, desc, category, subcategory)
 VALUES ('$contact', '$heading','$comments', '$catF', '$catS' ) ";
mysql_query($stringquery) or die(mysql_error());

我得到错误:

你的SQL语法有错误;查看手册对应于MySQL服务器版本,以便使用正确的语法near 'desc, category, subcategory ' VALUES (' jjjh ','fffff', 'fffff', 'fffff','2', '4')'在第一行

我找不到代码有什么问题,有人能帮忙吗?

DESC是保留的MySQL关键字。你需要用反引号括起来:

$stringquery = "INSERT INTO sikurim(name, title, `desc`, category, subcategory) VALUES ('$contact', '$heading','$comments', '$catF', '$catS' )";

您应该转义每个值。使用mysql_escape_string http://www.php.net/manual/en/function.mysql-escape-string.php