我有一个3-4桌的数据库患者n每个表有大约8个属性.... 我有一个表的病史,其中包含属性附加信息......我有5个复选框.... 除了chekbox值之外,所有输入的值都被占用..... 请帮忙
答案 0 :(得分:0)
你是如何建造田地的?它们都具有相同的name
属性吗?他们有名字属性吗?是否有value
属性?
<input type="checkbox" name="testfield" value="somevalue" />
<input type="checkbox" name="testfield" value="othervalue" />
如果你正在构建这样的复选框,那么PHP默认会忽略除了提交的最后一个值之外的所有值(它用新的值覆盖以前的值),如下所示:
$_POST = array(
'testfield' => 'othervalue'
)
通过将[]
添加到name
属性,您必须强制PHP进入此类型构造的“数组模式”:
<input type="checkbox" name="testfield[]" value="somevalue" />
<input type="checkbox" name="testfield[]" value="othervalue" />
这将允许以相同的名称提交多个值,并且最终会在_GET / _POST数组中添加一个数组:
$_POST = array(
'testfield' => array('somevalue', 'othervalue')
)
当然,只有实际检查过的复选框才会与表单数据一起发送。
通过在脚本的表单处理部分中放置var_dump($_POST);
(或GET或REQUEST)来检查表单是否正确构建,并查看是否实际发送了复选框值。也许您正在寻找错误的名称属性,标签可能在表单中格式不正确等等......