PHP中表单checkbox参数传递问题

 通常在网页中,使用多选框能够一次性选择多个属性值,进行批量操做,好比网站有大量垃圾信息,此时一个一个删除信息会耗费过多时间,若是使用checkbox表单提交,效率很高,能够批量删除。

    网页中checkbox的用法通常为:php

<form name="formdelpi" method="post" action="">
<input name=delpi type=checkbox value=1>
<input name=delpi type=checkbox value=2>
<input name=delpi type=checkbox value=3>
<input type="submit" name="s" value="【批量删除】">
</form>
在ASP中,能够直接使用 request.form("delpi") 获取参数值,request.form("delpi")的值是以逗号 “, ”分割,好比上面若是所有勾选,那么得到的值为:1, 2, 3。咱们能够使用split函数进行切割,从而对每一个参数进行合适的处理。

    而在PHP中,是没法直接经过$_POST["delpi"]获取像上面这样的值的,php中只能获取最后一个值,好比所有勾选,$_POST["delpi"]的值只返回3。

    为了解决这个问题,咱们就须要把表单 checkbox 的名称改成数组名:

<form name="formdelpi" method="post" action="">
<input name=delpi[] type=checkbox value=1>
<input name=delpi[] type=checkbox value=2>
<input name=delpi[] type=checkbox value=3>
<input type="submit" name="s" value="【批量删除】">
</form>
这样,咱们就能够经过 $_POST["delpi"] 获取数组array(1,2,3)里的所有值了。再使用foreach函数,能够对数组array里的每一个值进行操做:

$id=$_POST["delpi"];
foreach($id as $n){
mysql_query("delete from content where id=$n",$conn);
echo "·结果:删除ID:(".$n.") 成功!<br />";
}
相关文章
相关标签/搜索