繁体   English   中英

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

[英]Update multiple rows in a single query php mysql

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

  <?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))
  {
   echo "<tr><td><input type='checkbox' id='name'  name='name[]'    value=".$row['id']."</td><td>".$row['userid']."</td><td>".$row['busid']."</td> <td>".$row['numberofseats']."</td></tr>";

 }
 echo"<tr><td><input type='submit' name='submit' Value='Validate Tickets'> </td></tr>";
 if(isset($_POST['name']))
 {
 $Name=$_POST['name'];
 foreach($Name as $N)
  if(isset($_POST["submit"]) && $_POST["submit"]!="") {
   $usersCount = count($_POST["name"]);
   for($i=0;$i<$usersCount;$i++) {
   mysql_query("UPDATE ticket_reservation set validate_status='Yes'");
  }

   ?>
 <?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'");
 }}?>

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

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

另外,您在值后缺少“>”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM