checkbox血泪史
原帖地址:http://www.dophp.net/thread-476-1-1.html
由大斌发表PHP同盟会题目是够吓人的,但也是事实,因为本人是新鸟,所以做的比较累,花的时间也长些。如果没记错的话,应该有一个多星期了。先是改实现方式,期间麻烦了不少人。后来本周一时,才知道自己错在哪里了。把两个submit放到一个Form里了,不鬼打架才怪。还有一个问题,说出来怕丢人,也怕LEO骂人。以前犯过一次了,就是数据库的字段我用的是ID,而在页面中执行时,我却用id,所以,老是得不到数据。好了,说正事吧:
其实坛子里高手们写的很多,可惜我这个菜鸟看不懂,要不然,自己也不用花那么多的时间自己去捉摸。这个例子是说,如何取checkbox的值,然后传给下一个页面的。[复制PHP代码] [ - ]PHP代码如下:
页面1:
......
<?php
   $sqlstr="select * from stuff where kind='$kind'";
   $result=mysql_query($sqlstr,$link);
   while($info=mysql_fetch_array($result))
        {
  ?>
<form name="mx" action="del_stuff_chk.php" method="post" >
  <tr height="30">
   <td width="50" align="center" class="text">
   <input name="delid[]" type="checkbox" value="<?php echo $info[ID];?>">
   </td>
   <td width="100" class="text"><?php echo $info[name];?></td>
   <td class="text"><?php echo $info[kind];?></td>
  </tr>
  <?php
  }
   ?>
<tr height="30">
  <td colspan="3" align="center" valign="bottom">
   <input type="submit" name="del" value="删除">        
   <input type="reset" name="reset" value="重置">        
   <input type="button" name="back" value="返回" onclick=window.location.href="admin.php">
   </td>
   </tr>
表stuff有三个字段ID,name和kind,分别对应的是:ID,名称和分类.
页面2:
<?php
$delid=$_POST[delid];
  if($delid=="")
    {
?>
<script>alert("对不起,您没有选择任何项,请返回重新操作!");location.href="del_stuff.php";</script>
<?php
}
  else
     {
for($i=0;$i<count($delid);$i++)
    {
    $sqlstr="delete from stuff where ID ='$delid[$i]'";
    $result=mysql_query($sqlstr,$link);
    if($result)
      {
   ?>
<script>alert("恭喜,所选记录删除成功!");location.href="del_stuff.php";</script>
   <?php
   }
  else
   {
         ?>
<script>alert("对不起,所选记录删除失败,请重新操作!");location.href="del_stuff.php";</script>   
   <?php
   }
    }
}
?>