我在表单中有10个复选框。只有选中的复选框才会发送到POST。如何将所有复选框发送到POST,beacouse我想要执行更改为已检查的指令并更改为未选中复选框。 怎么做?
答案 0 :(得分:1)
正如我在评论中所说,浏览器只会发送选中的复选框,并且永远不会发送所有复选框。如果$_POST
或$_GET
变量中存在复选框并根据当前状态执行操作,您可以检查PHP。
如果使用PHP脚本动态生成复选框,则可以创建一个带有序列化数组的隐藏框,其中包含要检查的所有复选框名称,然后您只能循环访问它并在验证脚本中检查其状态。
由于您没有提供任何代码,我无法帮助您或进行任何改进。
答案 1 :(得分:0)
仅发送已选中的复选框。常见的策略是使用相同的名称和默认的未选中值设置隐藏的输入。只需确保复选框输入位于隐藏输入之后:
<input type="hidden" name="cb" value="0">
<input type="checkbox" name="cb" value="1">
然后总会有一个$_POST['cb']
的值0
表示未选中,值1
表示已选中。