-2

我的 SQL 语法有问题。我的文件中的所有其他 SQL 方法都是正确的,但 UPDATE 方法每次都失败。我找不到错误。请帮我。

$sql = mysql_query("UPDATE ".$dbName.".'settings' SET 'interval'=".$intervalValue." WHERE 'settingID'=0 ");

我的调试方法的错误是:

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 ''settings' SET 'interval'=2800 WHERE 'settingID'=0' at line 1
4

4 回答 4

1
$sql = mysql_query('UPDATE `' . $dbName . '`.`settings` SET `interval` = ' . $intervalValue . ' WHERE `settingID` = 0;');
于 2013-05-18T11:20:52.993 回答
1
$sql = mysql_query("UPDATE ".$dbName.".`settings` SET 'interval'=".$intervalValue." WHERE 'settingID'=0 ");

您应该用“`”代替“'”标记数据库和表。

于 2013-05-18T11:22:21.910 回答
0

您应该保护您的代码免受 SQL 注入:如何防止 PHP 中的 SQL 注入?

$sql = mysql_query("UPDATE ".$dbName.".settings SET interval='".$intervalValue."' WHERE settingID=0 ");
于 2013-05-18T11:21:15.837 回答
0

你引用错了。使用单引号来引用值而不是列名,使用正确的 MySQL 引用以及表和列名的刻度

"UPDATE ".$dbName.".`settings` SET SET `interval`='".$intervalValue."' WHERE `settingID`=0"
于 2013-05-18T11:20:44.177 回答