0

尝试通过表单中的隐藏输入传递值时收到此错误。我以前曾多次使用过它,但我似乎无法弄清楚为什么它没有特别通过这个时间。

索引表格中的代码:

<form method="post" action="viewchars.php">
    <input type="hidden" name="uname" value="testuser" />
</form>

viewchars.php 上的代码:

<?php
    $user = $_POST["uname"];
?>

该错误指出 uname 是未定义的索引。

我不想让错误消失,因为我实际上需要为 viewchars.php 页面传递值。

4

5 回答 5

1

您必须确保在使用 POST 值之前提交表单。所以它应该是这样的

$user = isset($_POST['uname']) ? $_POST['uname'] : '';

于 2012-11-29T23:44:36.590 回答
1

在您的 html 中添加提交按钮

<form method="post" action="viewchars.php">
    <input type="hidden" name="uname"  value="testuser" />
    <input type="submit" value="Submit"/>
</form>
于 2012-11-30T00:17:58.753 回答
0

如果您通过 JS 发送,请确保您实际使用的是 POST。您是否尝试过在 $_REQUEST 上进行测试?

另外,尝试:

  • 使用提交按钮只是为了测试

  • 使输入可见并键入要测试的文本

  • 更改变量名称

  • 试试 print_r($_REQUEST); 在 php 端查看接收到的内容

于 2012-11-30T00:02:12.520 回答
0

只需删除输入行末尾的“/”形式!像这样...

<form method="post" action="viewchars.php"> <input type="hidden" name="uname" value="testuser" > </form>

于 2014-12-04T05:50:44.510 回答
-1

尝试以下操作:

$user = $_POST['uname'];
于 2012-11-29T23:47:34.900 回答