HTML输入名称可以包含空格,逗号等吗?

时间:2013-07-01 00:17:31

标签: php html forms

基本上,我可以输入<input name="total sum(userID2223)" type="text" />等类似名称吗?那有什么规则吗?

2 个答案:

答案 0 :(得分:0)

是的,你可以。当PHP读取表单时,您将能够使用$POST["total sum(userID2223)"]来处理数据。

在不知道你想要做什么的情况下,我无法肯定地说,但可能在某处发生了糟糕的设计决定。

答案 1 :(得分:-2)

HTML4中不允许这样做:来自http://www.w3.org/TR/html401/types.html#type-cdata

  

ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(“ - ”),下划线(“ _“),冒号(”:“)和句号(”。“)。

有趣的是,在[]属性中使用NAME一直很常见,即使上述情况不允许这样做; PHP会将这些输入转换为_$GET$_POST中的数组。

HTML5允许:来自http://www.w3.org/TR/html5/forms.html#attr-fe-name

  

允许使用名称的任何非空值,但名称“ charset ”和“isindex”是特殊的

对于您的应用程序,我建议使用数组表示法:

<input name="total[2223]" type="text" />

然后在PHP中它将是$_POST['total'][2223]