我正在更新mysql表中的一行。更新行后,我想向用户显示“此信息现在更新”等信息
这是我的代码:
$result->$mysqli->query("UPDATE table SET status ="updated" WHERE id = '$id'");
if($result->num_rows > 0) {
///I WANT TO ECHO/ALERT THE UPDATE INFORMATION HERE
}
提前致谢:
答案 0 :(得分:0)
带有更新查询的MySQLi查询在失败时返回FALSE,在成功时返回TRUE。 所以,基本上,如果$ result为true,那么它已被更新。你可以回应一下#34;成功"。
$result = $mysqli->query("UPDATE table SET status ="updated" WHERE id = '$id'");
if ($result)
{
echo "Success";
}
如果您需要编写哪些数据已被更改,您需要在UPDATE查询之前和之后添加SELECT查询并输出它。
答案 1 :(得分:0)
您可以显示更新行的数量,例如:
$result->$mysqli->query("UPDATE table SET status ="updated" WHERE id = '$id'");
if($result->num_rows > 0) {
printf("Affected rows (UPDATE): %d\n", $mysqli->affected_rows);
}
答案 2 :(得分:0)
不,它不是->num_rows
,因为你没有选择任何行,所以知道它产生了多少行是没有意义的。如果您不知道它是否确实对某行进行了更新,请使用affected_rows
:
$sql = "UPDATE table SET status = 'updated' WHERE id = ?";
$update = $mysqli->prepare($sql);
$update->bind_param('s', $id);
$update->execute();
if($update->affected_rows > 0) {
echo 'yeah it updated that row!';
}