在单个查询php mysql中更新多行

时间:2015-09-07 15:59:36

标签: php mysql database selected

我正在尝试使用以下脚本更新多行,但问题是它更改了所需列中的所有数据条目。相反,我只希望更改选定的行。 这是我的代码:

void *

2 个答案:

答案 0 :(得分:1)

 <?php
  $query = mysql_connect("localhost","root","toor");
  mysql_select_db("busticket",$query);
  $result=mysql_query("Select * from ticket_reservation WHERE   validate_status='Yes'") or die(mysql_error());
  while($row=mysql_fetch_array($result))
  {?>
   <tr>
    <td><input type='checkbox' id='name'  name='name[]' value="<?echo $row['id'];?>"></td>
    <td><?echo $row['userid'];?></td>
    <td><?echo $row['busid'];?></td>
    <td><?echo $row['numberofseats'];?></td>
  </tr>
 <?}?>
 <tr><td><input type='submit' name='submit' Value='Validate Tickets'> </td></tr>
 <?
 if(isset($_POST["submit"])
 {
 $Name=$_POST['name'];
 $usersCount = sizeof($Name);
 for($i=0;$i<$usersCount;$i++) 
 {
    $ID=$Name[$i];
    mysql_query("UPDATE ticket_reservation set validate_status='Yes' WHERE id='$ID'");
 }}?>

答案 1 :(得分:-1)

复选框必须具有特定的名称,以便您可以知道数据库中要更新的内容。

<input type='checkbox' id='name'  name='name[1]' value=".$row['id'].">
<input type='checkbox' id='name'  name='name[2]' value=".$row['id'].">

你也错过了&#34;&gt;&#34;价值

之后