0

我对数据库更新活动有一点问题。

案例研究

我使用 PHP 编辑创建了一个表单,并执行查询以检索要更新的记录的值。脚本节选:

<?php
  $row = mysql_fetch_assoc(mysql_query("SELECT id, field_1, field_2 FROM mytable WHERE id = $editid"));
?>

 ...

<form action="" method="post">
  FIELD 1 <input type = "text" name = "f1v" value = "<? Php echo $ row ['field_1'];?>" />
  FIELD 2 <input type = "text" name = "f2v" value = "<? Php echo $ row ['field_2'];?>" />
  <input type="submit" />
</form>

....
// When the form posted

if ($_POST)
{
   $f1v = $ _POST['f1v'];
   $f2v = $ _POST['f2v'];

   mysql_query("UPDATE mytable SET field_1 = '$f1v', field_2 = '$f2v' WHERE id = $editid") or die ();

   // Redirect form
}

在这种情况下,我希望在提交表单时,有活动来检查一个或多个字段值是否发生变化。它的逻辑大概是这样的:

if ($ _POST)
{    
    // Compare
   if the submitted value is different from the existing value in the record
   {
      Updated record
   }
   else
   {
      Do not update record
   }       
    // Redirect form
}

你有什么简单的方法吗?谢谢您的帮助。

4

2 回答 2

1

不要费心检查。只需确保条目有效并将其放入即可。

于 2012-06-05T03:36:21.937 回答
-1

使用字段的当前值保留两个隐藏字段。提交表单后,检查提交的值是否与隐藏字段值不同。

于 2012-06-05T04:07:53.583 回答