我用它来向数据库中添加或更新内容。
$update = mysql_query
("
INSERT INTO details (id, name, team, cost)
VALUES ('$id', '$name', '$team', '$cost')
ON DUPLICATE KEY UPDATE cost = '$cost'
")
or die (mysql_error());
基本上,我想做.....
如果 $cost
发生变化,将旧值和新值回显到屏幕上,否则什么也不做。
我将如何做这样的事情?
最佳答案
首先你必须在临时变量中保持与你的id相对应的成本
$query = "SELECT cost FROM details WHERE id = $id";
$resource = mysql_query($query);
$temp_array = mysql_fetch_assoc($resource);
$old_cost = $temp_array['cost'];
现在执行你的操作
mysql_affected_rows 将在 DUPLICATE KEY UPDATE OPERATION 上返回 2
$update = mysql_query("
INSERT INTO details (id, name, team, cost)
VALUES ('$id', '$name', '$team', '$cost')
ON DUPLICATE KEY UPDATE cost = '$cost' ")
or die (mysql_error());
if(mysql_affected_rows() == 2)
{
echo "old cost = $old_cost";
echo "New Cost : $cost";
}
试试这个希望它有帮助
关于php - 识别何时发生更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15286550/