0

我收到以下关于我的语法的错误

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

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

谁能指出我错过了什么?

4

2 回答 2

2

replace保留字尝试 反引号反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()相对mysql_real_escape_string()

于 2012-12-10T12:09:42.513 回答
0

replace 是MySQL 的保留字.... 用反引号 (`) 引用它

于 2012-12-10T12:09:48.930 回答