gpt4 book ai didi

php - 一条update语句更新多个mysql表出错

转载 作者:可可西里 更新时间:2023-11-01 07:27:46 24 4
gpt4 key购买 nike

你好,

我有

Query was empty

错误,更新数据时。

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1"))
{
$updateSQL = sprintf("UPDATE client,release SET client.`client_name`=%s, release.`client_name`=%s WHERE client.`client_id`=%s AND release.`client_id`=%s", GetSQLValueString($_POST['newcust'], "text"), GetSQLValueString($_POST['select'], "int"));
mysql_select_db($database_trackntrace, $trackntrace);
$Result1 = mysql_query($updateSQL, $trackntrace) or die(mysql_error());
}

我认为查询有问题,任何人都可以确定问题出在哪里。

亲切的问候

最佳答案

问题出在 sprintf 函数中。你告诉 sprintf 你要传递 4 个字符串给它,但你只传递了 2 个。

因为你只传了2个参数,而它需要4个,所以会返回false。

尝试在您的代码上方添加:

error_reporting(E_ALL);
ini_set('display_errors', '1');

这是您使用上述设置应该得到的错误:

Warning: sprintf() [<a href='function.sprintf'>function.sprintf</a>]: Too few arguments

您想将其更改为什么以解决此问题:

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1"))
{
$updateSQL = sprintf("UPDATE client,release SET client.`client_name`=%s, release.`client_name`=%s WHERE client.`client_id`=%s AND release.`client_id`=%s", GetSQLValueString($_POST['newcust'], "text"), GetSQLValueString($_POST['newcust'], "text"), GetSQLValueString($_POST['select'], "int"), GetSQLValueString($_POST['select'], "int"));
mysql_select_db($database_trackntrace, $trackntrace);
$Result1 = mysql_query($updateSQL, $trackntrace) or die(mysql_error());
}

关于php - 一条update语句更新多个mysql表出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18871285/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com