如何在各种表单字段中执行更新查询


how execute update query in various form field(s)

就像phpmyadmin更新操作一样。我不知道我将更新多少列值。如何为各种表单字段运行不同的更新查询。是否可以执行1个查询。

假设我有一个person表,它有三列person_id、name和age。

我的html表单看起来像

<form>
 <input type='text' name='name'><br/>
 <input type='text' name='age'><br/>
<input type='text' value='save'>
</form>

如果我想更新"名称"字段的值,则查询为

UPDATE PERSON set name=? WHERE person_id=?

如果我想同时更新"姓名"和年龄字段的值,则查询为

UPDATE PERSON set name=?,age=? WHERE person_id=?

我希望所有的东西都在一个查询中

只要当前值以表单形式输出,您就可以在查询中更新所有值。他们是否改变并不重要。

创建一个字符串来更新

if($_POST['name'])
    $updatestring="name='".$_POST['name']."'";
 if($_POST['age'])
    $updatestring="age='".$_POST['age']."'";
 if($_POST['name'] && $_POST['age'])
   $updatestring="age='".$_POST['age']."',age='".$_POST['age']."'";
 //build query
  $query="UPDATE PERSON set $updatestring WHERE person_id=$_POST[id]"