【发布时间】:2010-06-21 16:41:44
【问题描述】:
我有许多复选框,所有命名的功能,具有不同的值,我如何在 php 中收集它们的值以及在加载时保存重新填充表单的最佳方法是什么,以便它显示以前选择的值。
谢谢
【问题讨论】:
-
复选框需要唯一的名称,因为每个都是不同的真/假值。只有收音机可以共享名称,因为收音机是“几个之一”。
-
@banzaimonkey — 垃圾。复选框没有真/假值,它们具有作者定义的值,并且如果选中则成功(在这种情况下它们被提交)(如果没有,则不成功)。您可以轻松地拥有一组具有相同名称的复选框,然后遍历它们以查看值是什么。
-
@David Dorward 这一直困扰着我一整夜。 PHP 处理 POST 的方式是构造一个数组,其中 name 是 key,value 是 value。因此,如果您有多个具有相同名称的复选框,则只有最后一个会保留,因为任何具有相同名称的后续键都将替换前一个。所以我的原始评论是正确的,在某种程度上,“真/假”被理解为布尔值而不是明确的“真”和“假”值。命名复选框
isset() == true或isset() == false。 DOM != PHP 从标头中得到什么。 -
PHP 很奇怪。与大多数表单处理库不同,它会丢弃多个具有相同名称的值(最后一个除外),除非该名称以字符
[]结尾。