首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否从多个复选框中获取发布数据?

是否从多个复选框中获取发布数据?
EN

Stack Overflow用户
提问于 2011-10-05 05:18:52
回答 2查看 43.6K关注 0票数 17

我正在尝试创建一个使用PHP的表单,我似乎找不到关于我需要什么的教程,所以我想我会在这里询问。

我的页面上有多个复选框选项...

代码语言:javascript
复制
 <li>
    <label>What service are you enquiring about?</label>
    <input type="checkbox" value="Static guarding" name="service">Static guarding<br>
    <input type="checkbox" value="Mobile Patrols" name="service">Mobile Patrols<br>
    <input type="checkbox" value="Alarm response escorting" name="service">Alarm response escorting<br>
    <input type="checkbox" value="Alarm response/ Keyholding" name="service">Alarm response/ Keyholding<br>
    <input type="checkbox" value="Other" name="service">Other<input type="hidden" value="Other" name="service"></span>
  </li>

但是,我不确定如何使用POST方法收集所有复选框值?

如果我使用

代码语言:javascript
复制
$service = $_POST['service'];

我只返回'other‘

EN

回答 2

Stack Overflow用户

发布于 2011-10-05 05:23:49

目前它只是捕捉你最后一次隐藏的输入。为什么你在那里有一个隐藏的输入呢?如果要在选中“其他”框的情况下收集信息,则必须隐藏

代码语言:javascript
复制
<input type="text" name="other" style="display:none;"/> 

当"Other“框被选中时,你可以用javascript显示它。差不多吧。

只需将名称属性设置为service[]

代码语言:javascript
复制
<li>
<label>What service are you enquiring about?</label>
<input type="checkbox" value="Static guarding" name="service[]">Static guarding<br />
<input type="checkbox" value="Mobile Patrols" name="service[]">Mobile Patrols<br />
<input type="checkbox" value="Alarm response escorting" name="service[]">Alarm response escorting<br />
<input type="checkbox" value="Alarm response/ Keyholding" name="service[]">Alarm response/ Keyholding<br />
<input type="checkbox" value="Other" name="service[]">Other</span>
</li>

然后在你的PHP中你可以像这样访问它

代码语言:javascript
复制
$service = $_POST['service'];
echo $service[0]; // Output will be the value of the first selected checkbox
echo $service[1]; // Output will be the value of the second selected checkbox
print_r($service); //Output will be an array of values of the selected checkboxes

等等。

票数 4
EN

Stack Overflow用户

发布于 2011-10-05 05:21:17

代码语言:javascript
复制
<input type="checkbox" value="Other" name="service">Other<input type="hidden" value="Other" name="service"></span>

您有一个与checkbox同名的隐藏输入字段。与前一个字段同名的“后”字段将覆盖前一个字段的值。这意味着,如上所述,您的表单将始终提交service=Other

考虑到您的问题在html中的表达方式,它听起来更像是您想要一个单选按钮,它只允许选择一组同名字段中的一个。复选框是"AND“情况,单选按钮对应于"OR”

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7654155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档