如何使用PHP复选框?

时间:2012-12-27 17:38:00

标签: php html mysql

所以现在我正在编码,以便用户可以通过选中要删除的邮件来删除邮件并点击删除按钮。

但是我的问题出现了,如何只用一个查询删除多个条目?

就像,如果它是单选按钮,我可以删除一个与$_POST['radio']匹配的条目,但现在它只能是一个条目,它可以是更多条目。

如果我很难理解我的问题,我很抱歉,如果你不理解,我会尝试更好地解释。

2 个答案:

答案 0 :(得分:2)

使用消息ID创建一个复选框数组。 HTML表示法就是这样。

<input name="del[1]"
<input name="del[2]"
etc...

然后迭代$_POST['del']以查找要删除的消息ID。

答案 1 :(得分:1)

我能想到的是在用户端使用脚本并将字符串连接到帖子。您可以使用document.getElementById并通过在带有id的div中创建所有复选框来获取其值,或者直接为您的框提供ID。

让我试着解释一下自己:在$_POST['checkboxes']中,你会得到一个字符串除以你已知/你所选择的字符,你可以用php explode()分割成一个字符串向量。

但是,连接应该由用户端的脚本完成。

想象一下,你有一个带有值hello的盒子,以及带有值world的盒子。您需要做的不是在表单上action="submit",而是action="someJSFunction"。此函数应该在一个字符串中获取所有复选框值:String a += document.getElementById.value;(或类似的东西),然后您的函数进行提交。如果设置了这两个示例框并且你选择了\ _字符作为除法,那么在你的php $_POST['checkboxes']中你将得到:hello \ world。

如果您希望将表单操作保留为提交,请将删除按钮类型设置为提交,并使用onclick使其调用您的函数但使用return false,以便等待脚本结束以进行提交。类似于:onclick"someFunc(this); return false"

我前段时间遇到过这个问题,这就是我解决它的方式。

希望这会有所帮助。