提交时,php POST方法错误

时间:2017-04-22 16:02:05

标签: php

我试图将表单从一个php提交到另一个。但它给了我错误。请帮忙

<form action="script.php" method="POST">
            <p>
                <label class = "log3"> Username</label>
                <input class = "log" type="text" id="user" name="studentid">
            </p>

            <p>
                <label class = "log4"> Password </label>
                <input class = "log2" type="password" id="pass" name="Pass">
            </p>

            <p>
                <input type="submit" id="studentbtn" value="As Student">
                <input type="submit" id="lecturerbtn" value="As Lecturer">
            </p>
        </form>

这是获取提交值的php文件

$lecturerid = $_POST['user'];
$password = $_POST['pass'];

错误讯息:

  

注意:未定义的索引:第4行的C:\ xampp \ htdocs \ Coursework \ script.php中的用户

     

注意:未定义的索引:在第5行传入C:\ xampp \ htdocs \ Coursework \ script.php。

5 个答案:

答案 0 :(得分:2)

您需要使用name代替id

在表单提交中发送数据时使用name属性。您可能有多个单选按钮具有不同的id属性,但具有相同的name。提交时,响应中只有一个值 - 您选择的单选按钮。

表格:

    <form action="script.php" method="POST">
        <p>
            <label class = "log3"> Username</label>
            <input class = "log" type="text" id="user" name="studentid">
        </p>

        <p>
            <label class = "log4"> Password </label>
            <input class = "log2" type="password" id="pass" name="Pass">
        </p>

        <p>
            <input type="submit" id="studentbtn" value="As Student">
            <input type="submit" id="lecturerbtn" value="As Lecturer">
        </p>
    </form>


$lecturerid = $_POST['studentid'];
$password = $_POST['Pass'];

答案 1 :(得分:1)

您需要在name变量中询问输入的$_POST属性:

$lecturerid = $_POST['studentid'];
$password = $_POST['Pass'];

点击此链接获取php手册教程:http://php.net/manual/en/tutorial.forms.php

答案 2 :(得分:0)

$lecturerid = $_POST['studentid'];
$password = $_POST['Pass'];

使用name属性而不是id。

答案 3 :(得分:0)

您的表单输入名称为studentid和Pass

 <input class = "log" type="text" id="user" name="studentid">
 <input class = "log2" type="password" id="pass" name="Pass">

因此你的$ _POST [&#39;&#39;]方法应该如下:

$lecturerid = $_POST['studentid'];
$password = $_POST['Pass'];

答案 4 :(得分:0)

你所犯的错误是使用你曾经使用过的id错误的名称,因为如果你想在另一个页面上使用POST Super变量调用某些东西你需要使用你给出的'name'来调用在上一页。

 <input class = "log" type="text" id="user" name="studentid">

在上面的代码中,您提供的名称是“studentid”,因此当您尝试访问此处输入​​的数据时,您需要执行以下操作。

$lecturerid = $_POST['studentid'];

如需进一步参考,请查看https://www.w3schools.com/php/php_forms.asphttp://php.net/manual/en/reserved.variables.post.php