<?  $DBQuanXian= new mysql();
      $sqlQuanXian="select * from GangWei";
  $DBQuanXian->query($sqlQuanXian);
  while($resQuanXian=$DBQuanXian->fetch()){
  ?>
      <input type="checkbox" name="<?=$resQuanXian['ID']?>" value="<?=$resQuanXian['ID']?>" />
<? }?>
我要在form提交过去的页面选取这个input的name,应该怎么做?或者说有什么其他的实现方法没有?麻烦各位大大指教

解决方案 »

  1.   

    你是要获取name还是复选框的值? 
      

  2.   

    checkbox 被动态命名为 name="<?=$resQuanXian['ID']?>"
    所以 name 的值是不确定的,因此需要遍历整个 $_POST 数组
    foreach($_POST as $k=>$v) {
      if(is_numeric(k) && $k == $v) $id[] = $v;
    }一般用数组方式命名
    name="id[]"
    这样读取就容易多了
    $id = $_POST['id'];
      

  3.   

    代码是<  $id=array();
      $i=0;
      while($resQuanXian=$DBQuanXian->fetch()){
     
      ?>
          <input type="checkbox" name="<?=$id[$i]?>" value="<?=$resQuanXian['ID']?>" />
          <span class="STYLE3"><?=$resQuanXian['GangWei']?></span></label>
         <?  $i++;}?>
    $id=$_POST['id']或者$id=$_POST['id[]']后,echo $id和print_r($id)均没有值,这个怎么解决?
      

  4.   

    本帖最后由 xuzuning 于 2012-12-10 12:52:18 编辑
      

  5.   

    好吧我现在采用的方法是取我从数据库查出的数组和post数组的交集,然后做成一个字符串这样