在mysql中回显更新字段

时间:2014-12-10 08:26:41

标签: php mysql

我正在更新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
   }

提前致谢:

3 个答案:

答案 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);
}

http://php.net/manual/es/mysqli.affected-rows.php

答案 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!';
}