我正在尝试通过以下方式更新数据库中的某些数据:
tessdata
当我运行时,我收到以下错误:
致命错误:无法通过引用传递参数2
列if($stmt = $connection->prepare("UPDATE `booking` SET status = ?, datecreated = ? WHERE day = ? AND timeSlot = ?")){
$stmt->bind_param('ssss', 'processing', 'now()', $results[0]['timeSlot'], $results[0]['day']);
$stmt->execute();
$stmt->close();
echo 'Updated';
}
是日期时间类型。
我现在尝试了()和现在()'和日期(' Y-m-d H:i:s')所有3都给我同样的错误。
答案 0 :(得分:4)
您需要绑定可以引用的变量。如果他们不是变量,那么将它们直接放在查询中:
if($stmt = $connection->prepare("UPDATE `booking` SET status = 'processing', datecreated = NOW() WHERE day = ? AND timeSlot = ?")){
$stmt->bind_param('ss', $results[0]['timeSlot'], $results[0]['day']);
$stmt->execute();
$stmt->close();
echo 'Updated';
}
或者我猜你可以做$booking = 'processing';
和$datecreated = 'NOW()';
并绑定这些变量。