大家早上好
我在 php 中使用更新命令来更新 mysql 中的数据。这是我的代码:
$sql=mysql_query("UPDATE blpublication SET JournalName = '$_POST[journal]', AcceptanceDate = '$_POST[acceptancedate]', PublishedDate = '$_POST[publisheddate]', Comment = '$_POST[comment]'
WHERE JobNo = '$_POST[jobno]'");
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "record Updated";
它确实更新了字段,但它给了我以下错误。而且我无法弄清楚为什么我会收到此错误。 “错误:您的 SQL 语法有误;请查看与您的 MySQL 服务器版本对应的手册,了解在第 1 行的‘1’附近使用的正确语法”
你能帮我吗
最佳 泽山
最佳答案
你能告诉我们 $sql
的确切输出是什么吗?顺便说一句,那里有大安全漏洞。您应该始终转义查询输入,即:
$journal = mysql_real_escape_string($_POST['journal']);
$acceptance_date = mysql_real_escape_string($_POST['acceptancedate']);
$publish_date = mysql_real_escape_string($_POST['publisheddate']);
$comment = mysql_real_escape_string($_POST['comment']);
$job_no = intval($_POST['jobno']); // assuming jobNo is a number
$sql = <<<END
UPDATE blpublication
SET JournalName = '$journal',
AcceptanceDate = '$acceptance_date',
PublishedDate = '$publish_date',
Comment = '$comment'
WHERE JobNo = $jobno
END;
mysql_query($sql);
if (mysql_error()) {
die("Error executing query '$sql': " . mysql_error());
}
echo "record Updated";
关于php - MySQL 更新命令出错。 (在 PHP 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1038274/