程序改成:(checkbox的name要有[])
for ($i = 0; $i < $dwnum; $i++){
$dwmyrow = mssql_fetch_array($dwresult);
echo"<tr>";
echo"   <td align='center' width='26'><input type='checkbox' name='checkbox[]' value=$dwmyrow[banzhu] /></td>";
echo"   <td align='center' width='74'>$dwmyrow[banzhu]</td>";
echo"</tr>";

}接受的页面用$_POST["check"],这个变量是一个数组,数组里面存了前一页面选中的值。
得到这个数组。写SQL就没问题了。

解决方案 »

  1.   

    楼上正解,php中如果想要获得某些名称一样的空间的所有的值的话,只要再空间的name属性的值后面加[]就可以了,获取到的是值就是数组。
      

  2.   

    for ($i = 0; $i < $dwnum; $i++){
    $dwmyrow = mssql_fetch_array($dwresult);
    echo"<tr>";
    echo‘ <td align="center" width="26"><input type="checkbox" name="checkbox'.$i.'" value="'.$dwmyrow[banzhu].'" /></td>';
    echo" <td align='center' width='74'>$dwmyrow[banzhu]</td>";
    echo"</tr>";}
      

  3.   

    select * from dbname where file1=?
      

  4.   

    关键是你的checkbox要用数组的形式传值!
    比如<input type="checkbox" name="mybox[]">
    该表单提交到PHP后$_POST['mybox']的值是一个数组,你要遍历数组才能得到它里头的值,明白否?
      

  5.   

    1、命名
    <input type='checkbox' name='checkbox[]' value=$dwmyrow[banzhu] />2、使用
    当计划当作sql指令的一部分时:
    如果参与控制的字段是数值型的,则
    if(! empty($_POST['checkbox'])) {
      $expr = join(",", $_POST['checkbox']);
      $sql = "select * from tbl_name where field in ($expr)";
    }
    如果参与控制的字段是数值型的,则
    if(! empty($_POST['checkbox'])) {
      $expr = "'".join("','", $_POST['checkbox']).".";
      $sql = "select * from tbl_name where field in ($expr)";
    }
      

  6.   

    手误:(如果参与控制的字段是字符型的,则
    if(! empty($_POST['checkbox'])) {
      $expr = "'".join("','", $_POST['checkbox'])."'";
      $sql = "select * from tbl_name where field in ($expr)";
    }
      

  7.   

    顺便问一下:
    我有三个页面分别为A.php b.php c.php A是登陆页面。我要将值传到b再传给c我在a上用session_start();或在b在用session_start();都不管用c都不能调用它!请问这是怎么回事呀!