MYSQL / PHP语法错误 - 使用POST值

时间:2012-12-10 12:08:10

标签: php mysql

我的语法

出现以下错误

您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以便在'replace ='附近使用正确的语法NOCOLOGY1'WIERE search ='COMPANYNAME''在第1行

$comp = "UPDATE msp_rereplacer SET replace='".addslashes($_POST[companyname])."' WHERE search='COMPANYNAME' ";

任何人都可以找出我所缺少的东西吗?

2 个答案:

答案 0 :(得分:2)

replace Reserved Words尝试反对 replace 反对

 .addslashes($_POST[companyname]).

应该是

.addslashes($_POST['companyname']).

$comp = "UPDATE msp_rereplacer SET `replace`='".addslashes($_POST['companyname'])."' WHERE search='COMPANYNAME' ";

而不是

$comp = "UPDATE msp_rereplacer SET `replace`='".mysql_real_escape_string($_POST['companyname'])."' WHERE search='COMPANYNAME' ";

注意

不建议使用此扩展名(mysql_*)。而是MySQLiPDO

好读

addslashes() Versus mysql_real_escape_string()

答案 1 :(得分:0)

replace是MySQL reserved word ....在反引号(`)

中引用它