我正在使用自定义CMS并尝试插入值
结果查询效果很好但是result2查询开始给出错误
即使我尝试在相同的查询中添加它,但仍然给我相同的错误
$sname=addslashes($_POST['sname']);
$descr=mysql_real_escape_string($_POST['descr']);
$eve_format=mysql_real_escape_string($_POST['eve_format']);
$name=mysql_real_escape_string($_POST['name']);
$pbm=mysql_real_escape_string($_POST['pbmstat']);
$group=$_POST['group'];
$feat_img=mysql_real_escape_string($_POST['feat_img']);
$query="INSERT INTO events (descr,name,eve_format,prize1,prize2,eve_sname) VALUES ('".$descr."','".$name."','".$eve_format."','".$prize1."','".$prize2."','".$sname."')";
$result=mysql_query($query) or die(mysql_error());
$qry2="INSERT INTO events (group) VALUES ('".$group."')";
$result2=mysql_query($qry2) or die(mysql_error());
我得到的错误是
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 'group) VALUES ('1')' at line 1
我无法确定那里的错误
我认为我没有语法错误
答案 0 :(得分:3)
您的提示已经突出显示在MYSQL错误上。
right syntax to use near 'group)
因为group
是一个mysql保留字。
你需要用反引号包装它
`group`
强制性注释:
Please, don't use
mysql_*
functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDO或MySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial。
答案 1 :(得分:1)
group
是MySQL保留的关键字。
http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
向其添加后退勾号group
OR
在它之前添加数据库名称
e.g。
TABLE_NAME.group
但是,最好的方式如果可能是将group
重命名为不是MySQL保留关键字的内容。