我已经构建了一个具有复选框输入数组的表单(保存到数组中)。但是,当我发布它并检索结果时,它只提供最后的选择。
<input type="checkbox" value="Friendly" name="quest[9]"> Friendly<br>
<input type="checkbox" value="Attentive" name="quest[9]"> Attentive<br>
<input type="checkbox" value="Enthusiastic" name="quest[9]"> Enthusiastic<br>
<input type="checkbox" value="Understanding" name="quest[9]"> Understanding<br>
<input type="checkbox" value="Well Mannered" name="quest[9]"> Well Mannered<br>
<input type="checkbox" value="Efficient" name="quest[9]"> Efficient<br>
<input type="checkbox" value="Genuine" name="quest[9]"> Genuine<br>
例如,假设我选择了“友善”,“高效”和“真实”。
当我将其发布到PHP文档并运行
时print_r($_POST['quest']);
我只收到
Array ( [9] => Genuine )
返回所以“正版”是我回来的唯一项目。有没有办法来解决这个问题?我做错了什么?
这是调查的第9个问题,所以不幸的是,更改名称不是一个选择。有没有办法将结果组合到用逗号分隔的单个数组?我可以在php端始终explode
。
答案 0 :(得分:3)
您的所有复选框都具有相同的名称,使其唯一
<input type="checkbox" value="Friendly" name="quest[3]"> Friendly<br>
<input type="checkbox" value="Attentive" name="quest[4]"> Attentive<br>
<input type="checkbox" value="Enthusiastic" name="quest[5]"> Enthusiastic<br>
<input type="checkbox" value="Understanding" name="quest[6]"> Understanding<br>
<input type="checkbox" value="Well Mannered" name="quest[7]"> Well Mannered<br>
<input type="checkbox" value="Efficient" name="quest[8]"> Efficient<br>
<input type="checkbox" value="Genuine" name="quest[9]"> Genuine<br>
或使用空方括号,因此php会将输入视为数组
<input type="checkbox" value="Friendly" name="quest[]"> Friendly<br>
<input type="checkbox" value="Attentive" name="quest[]"> Attentive<br>
<input type="checkbox" value="Enthusiastic" name="quest[]"> Enthusiastic<br>
<input type="checkbox" value="Understanding" name="quest[]"> Understanding<br>
<input type="checkbox" value="Well Mannered" name="quest[]"> Well Mannered<br>
<input type="checkbox" value="Efficient" name="quest[]"> Efficient<br>
<input type="checkbox" value="Genuine" name="quest[]"> Genuine<br>
答案 1 :(得分:3)
在名称中使用quest []而不是任务[9]。 也在php部分使用它来添加多个选择。
<?php
$quest = implode(',',$_post['quest']);
print_r($quest);
?>
快乐的编码!!
答案 2 :(得分:2)
我发布了一个关于你对前一个评论的新答案:
因为你必须将quest [9]作为复选框数组的组织..
您可能想尝试将其设为更复杂的数组,其中每个<input>
都有name="quest[9][1]"
,name="quest[9][2]"
等等。
通过
找到内容print_r($_POST['quest']);
再次