数据库表结构为id     name   number比如里面的内容是1                          aaaa                  30
2                          bbb                     30
3                           xxxxx                 20现在把内容全部读到一个表格里,想按提交按钮的时候全部更新一遍,代码怎么修改呢?这个是我的代码
<form name="myform" method="post" action=" ">
  <table width="60%" height="162" border="1">
  <tr>
    <td width="49%">名称</td>
    <td width="10%">数量</td>
  </tr>
<?php
    $SQL2="SELECT * FROM `table_a`  ";
    $query2=mysql_query($SQL2);
    while($row2=mysql_fetch_array($query2))
     {
?>
  <tr>
    <td> input type="hidden" name="id" value="<?=$row2[id]?>"><input type="text" value="<?=$row2[name]?>" name="name" readonly></td>
    <td> <input type="text" value="<?=$row2[number]?>" name="number"></td>
  </tr>
 <?php
    }
 ?>
</table>
<table width="60%">
 <tr>
  <td align="center"><input type="submit" value="更新" name="submit"></td>
 </tr>
</table>
</form>

解决方案 »

  1.   

    第一种方法, 一条条数据通过mysql_query()循环更新
      

  2.   

    你一更新,update然后在select 放到表格中.是这样一个流程.
      

  3.   

    你用的一个from表单里提交重复的id name number 肯定不行。除非用js把数据取出整理后再url提交。
    要不就是循环表单,把from放在里面一个一个更新
      

  4.   

    <table width="60%" height="162" border="1">
      <tr>
        <td width="49%">名称</td>
        <td width="10%">数量</td>
        <td width="10%">操作</td>
      </tr>
    <?php
        $SQL2="SELECT * FROM `table_a`  ";
        $query2=mysql_query($SQL2);
        while($row2=mysql_fetch_array($query2))
         {
    ?>
    <form name="myform" method="post" action=" ">
      <tr>
        <td> input type="hidden" name="id" value="<?=$row2[id]?>"><input type="text" value="<?=$row2[name]?>" name="name" readonly></td>
        <td> <input type="text" value="<?=$row2[number]?>" name="number"></td>
      </tr>
     <tr>
      <td align="center"><input type="submit" value="更新" name="submit"></td>
     </tr>
    </form>
     <?php
        }
     ?>
     
    </table>
      

  5.   

    也可以这样一次性提交,在表单的name属性上加个标记<form name="myform" method="post" action=" ">
      <table width="60%" height="162" border="1">
      <tr>
        <td width="49%">名称</td>
        <td width="10%">数量</td>
      </tr>
    <?php
        $SQL2="SELECT * FROM `table_a`  ";
        $query2=mysql_query($SQL2);
        $i=1;
        while($row2=mysql_fetch_array($query2))
         {
    ?>
      <tr>
        <td> input type="hidden" name="id<? echo $i++;?>" value="<?=$row2[id]?>"><input type="text" value="<?=$row2[name]?>" name="name<? echo $i++;?>" readonly></td>
        <td> <input type="text" value="<?=$row2[number]?>" name="number<? echo $i++;?>"></td>
      </tr>
     <?php
        }
     ?>
    </table>
    <table width="60%">
     <tr>
      <td align="center"><input type="submit" value="更新" name="submit"></td>
     </tr>
    </table>
    </form><?php
        $SQL3="SELECT * FROM `table_a`  ";
        $query3=mysql_query($SQL3);
        $j=$count($query3)
        for($a=0;$a<$j;$a++){
              $id=$_POST['id'.$a];
              $name=$_POST['name'.$a];
              $number=$_POST['number'.$a];
              $SQL4="UPDATE 'table_a' SET name=$name,SET numbe=$number WHERE 'id'=$id";
      mysql_query($SQL4);
        }
    ?>
    代码我没测试,反正思路是这样
      

  6.   

    <tr>
        <td> input type="hidden" name="id[]" value="<?=$row2[id]?>"><input type="text" value="<?=$row2[name]?>" name="name[]" readonly></td>
        <td> <input type="text" value="<?=$row2[number]?>" name="number[]"></td>
      </tr>foreach($_POST['id'] as $i=>$id) {
      $sql = "update table_a set name='{$_POST[name][$i]}', number={$_POST[number][$i]} where id=$id";
    ...
    }