PHP $ _POST和id唯一,没有名字

mat*_*wen 6 php

有人可以向我解释一下吗?

我有以下代码:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
 <input type="text" id="testField" />
 <input type="submit">
</form>
<br /><br />
<pre>
 <?php print_r($_POST); ?>
</pre>
Run Code Online (Sandbox Code Playgroud)

这在我的主开发盒和服务器上工作正常.但是,我现在不得不在我的笔记本电脑上远程工作.我安装了与我的开发设置完全相同的WAMPServer 2.1a版本,$ _POST数组为空.

如果我声明这样的字段:

<input type="text" name="testField" />
Run Code Online (Sandbox Code Playgroud)

我得到了预期的输出.

Ign*_*ams 9

从HTML 4.01规范,§17.2,"控件":

控件的"控件名称"由其name属性给出.

...

提交表单进行处理时,某些控件的名称与其当前值配对,这些对与表单一起提交.

"id"并不重要.


dyn*_*mic 7

标准行为.始终name在表单内使用.

  • 情况就是这样.可能是主开发盒上的浏览器自动使用`id`作为缺少的`name`属性. (2认同)