基本上我只是试图将columnA
中的值增加1,但我希望使用参数化的mysqli查询来实现。现有值可以是null,空白或数字,但如果是前两个,则查询应该将其视为0并将其递增1.示例here不带参数。
我现有的代码在这里 - 停留在bind_param步骤:
$prepare = $this -> db -> prepare("UPDATE userinfo SET idarray = ?, currentkey = ? WHERE id = ?");
$prepare -> bind_param('sii', serialize($numbers), currentkey + 1, $ID);
$prepare -> execute();
if ($prepare -> errno)
{
echo $prepare -> error;
}
$prepare -> close();
答案 0 :(得分:2)
为什么要尝试将记录值currentkey + 1
(非PHP变量)放入预准备语句中?
你能尝试一下:
//...
$prepare = $this->db->prepare("UPDATE userinfo SET idarray = ?, currentkey = currentkey + 1 WHERE id = ?");
$prepare->bind_param('si', serialize($numbers), $ID);
$prepare->execute();
// ...
如果您考虑一下,currentkey + 1
不是来自PHP的参数,您的SQL引擎就知道该值以及如何进行总和