飘易博客(作者:Flymorn)
订阅《飘易博客》RSS,第一时间查看最新文章!
飘易首页 | 留言本 | 关于我 | 订阅Feed

PHP中表单checkbox参数传递问题

Author:Flymorn Source:飘易博客
Categories:PHP编程 PostTime:2008-10-24 11:59:50
正 文:
    一般在网页中,使用多选框可以一次性选择多个属性值,进行批量操作,比如网站有大量垃圾信息,此时一个一个删除信息会耗费过多时间,如果使用checkbox表单提交,效率很高,可以批量删除。

    网页中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>

    在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 />";
}

作者:Flymorn
来源:飘易博客
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。
上一篇:流氓电信的财大气粗
下一篇:微软XP黑屏延迟到21号,网上出现破解方法
4条评论 “PHP中表单checkbox参数传递问题”
1 pengk
2008-11-2 3:20:07
在没有任何声明情况下 删除连接 你是不是很无耻  你以为靠这个就可以提高自身网站了么?http://www.91wk.com
===============================
博主回复:撤销你的链接,主要是贵博客已经不是“博客”了,贵站已变成了一个专门通过特意的热门关键词截取SE流量的网站,很明显,这已经偏离了我当初交换链接的意愿。
2 xloong
2010-4-5 5:54:42
我觉得1楼说话很偏了,自己的站已经变成非博客了.还有脸说博主无耻.如果你的站是已博客为主,不涉及国家规定违规的内容.我想博主再怎么的把你的链接撤销了.那么我就认为博主有点不厚道了,需要先声明下,但是我也不知道博主再撤销你的链接时有无事先声明过,这我就不清楚,在不清楚的情况下我也好别人也好,无法做以评论多少,只是提及个人的一点观点罢了.也不要诋毁人,虽说网上评论自由,那也得评论的有素质点是吧.
2010-11-2 17:01:21
最近也在学php,也刚学到表单提交,还没学到这么深入。呵呵
对于1楼 我的观点是:道不同不相为谋,做网站也要厚道!
4 lee
2012-4-9 17:08:33
我说怎么老出错呢,原来我把delpi[]写成了<?php echo $delpi[]; ?>之前还定义了一个delpi数组,呃,,,2到家了,谢谢博主的这篇文章。
发表评论
名称(*必填)
邮件(选填)
网站(选填)

记住我,下次回复时不用重新输入个人信息
© 2007-2010 飘易博客 Www.Piaoyi.Org 原创文章版权由飘易所有 渝ICP备07006361号