Home > Backend Development > PHP Tutorial > PHP中获取多个复选框的值,一定要给复选框的name属性值加[]吗

PHP中获取多个复选框的值,一定要给复选框的name属性值加[]吗

WBOY
Release: 2016-06-23 14:11:34
Original
1356 people have browsed it

我发现PHP程序中,为获取复选框的值,通常都给复选框的name属性加[],例如:


新用户注册



姓名:

性别:
  

爱好:太极拳
  音乐
  旅游

职业:

个性签名:




能不能不加,用别的办法取代了,因为我想把ASP的程序转换为PHP的程序,我希望HTML文件不改动最好。
还有,就是说加了这个hobby[],获取到的就会是个数组,不加就不是,这和ASP也不同哦,ASP对于多个name属性值相同的元素,获取到的总是数组。


回复讨论(解决方案)

这个没办法改变了

如果要既不改变HTML结构又想获取多选框的数组,那么楼主可以用JS获取多选框的值并合成JS数组,然后传值给PHP。

这是php的一个约定,除非修改内核,不能改变

但是你也可以自行处理提交的数据,希望你具备着个能力
对于表单

<form method=post>姓名:<input type="text" name="name"><br>性别:<input type="radio" name="Sex" value="1" checked="checked">男<input type="radio" name="Sex" value="0">女<br>爱好:<input type="checkbox" name="hobby" value="太极拳">太极拳<input type="checkbox" name="hobby" value="音乐" checked>音乐<input type="checkbox" name="hobby" value="旅游" checked>旅游<br><input type="submit" value="  提 交 "></form>
Copy after login

提交后用
echo urldecode(file_get_contents('php://input'));
Copy after login
你将得到形如这样的串:name=&Sex=1&hobby=音乐&hobby=旅游
至于接下来要做些什么?那就是你自己的事情了

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template