我不断收到以下警告:如何解决这个mysqli PHP警告?
[04-Dec-2014 06:51:49 UTC] PHP Warning: mysqli_stmt_bind_param() expects parameter 1 to be mysqli_stmt, boolean given in xxx.php on line 48
[04-Dec-2014 06:51:49 UTC] PHP Warning: mysqli_stmt_execute() expects parameter 1 to be mysqli_stmt, boolean given in xxx.php on line 49
[04-Dec-2014 06:51:49 UTC] PHP Warning: mysqli_stmt_close() expects parameter 1 to be mysqli_stmt, boolean given in xxx.php on line 50
在我的(有限)的经验,这意味着MySQL查询我输入的是错误的。不过,我检查了我的代码 - 它可以工作,但有时会引发这个错误。到底是怎么回事?相关代码如下。
$stmt = mysqli_prepare($con, "UPDATE xxx SET yyy = ?, zzz = ?, timecheck = NOW(), aaa = ? WHERE bbb = '$ccc'");
mysqli_stmt_bind_param($stmt, "dss", $abc, $def, $ghi);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
$ ABC是一个浮动,$ DEF是NULL和$ GHI是一个字符串。难道问题是$ ccc有时不能保持它应有的价值?
请帮忙!
你检查,如果你的连接失败? – Rizier123 2014-12-04 07:01:09
你的'$ stmt'变量失败并返回一个'bool',而不是'mysqli_smst'资源的功能要求。 – Darren 2014-12-04 07:01:31
您也应该传递'$ ccc'作为参数。 – Gumbo 2014-12-04 07:02:45