MySql可以插入值

时间:2014-12-09 06:38:57

标签: php mysql

我正在使用自定义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

我无法确定那里的错误

我认为我没有语法错误

2 个答案:

答案 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,并使用PDOMySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial

     

参考:https://stackoverflow.com/a/12860140/3859027

答案 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保留关键字的内容。