
HTML 表单仅提交 元素的 value 属性值,标签内嵌文本(如 name 中的 "name")不会被发送;若需传递该文本,必须将其显式设为某个输入字段的 value 属性。
html 表单仅提交 `` 元素的 `value` 属性值,标签内嵌文本(如 `name` 中的 "name")不会被发送;若需传递该文本,必须将其显式设为某个输入字段的 `value` 属性。
在您提供的代码中,存在一个关键的 HTML 语法错误: 是自闭合标签,不支持嵌套内容(即不能写成 name)。浏览器会忽略其内部文本,仅识别 value="000",因此 PHP 接收的始终是 "000",而非期望的 "name"。
✅ 正确做法是将需要提交的文本(如 "name")明确赋值给某个 或 的 value 属性,并确保其 name 属性可被 PHP 识别:
在 name.php 中即可通过以下方式获取:
<?php $myid = $_POST['myid'] ?? ''; // → "000" $myname = $_POST['myname'] ?? ''; // → "name" echo "ID: $myid, Name: $myname"; ?>
⚠️ 注意事项:
- 不要试图用 name 传递内容——该写法无效且不符合 HTML 标准;
- 若需动态设置(例如由 JavaScript 创建并填充),请使用 element.value = "name",而非操作 innerHTML;
- 如需用户可编辑该文本,可改用 ;
- 始终对 $_POST 数据进行过滤与验证(如 filter_input(INPUT_POST, 'myname', FILTER_SANITIZE_STRING)),防止 XSS 或注入风险。
总结:表单数据传输依赖于 name/value 键值对,一切需提交的内容都必须落位于合法 、











