PHP代码注意:未定义变量:密码在C:\xampp\htdocs\myfiles\login.PHP的第51行,您必须输入密码吗?

PHP代码注意:未定义变量:密码在C:\xampp\htdocs\myfiles\login.PHP的第51行,您必须输入密码吗?,php,Php,有人问了我这个问题,但问得很糟糕,导致问题没有得到解决。问这个问题的那个人所经历的正是我所经历的,我想他也跟我一样。总之,以下是我迄今为止编写的所有PHP/HTML代码: <?php session_start(); ?> <?php $form = "<form action='./login.php' method='post'> <table> <tr> <td>Username:</td> <td>

有人问了我这个问题,但问得很糟糕,导致问题没有得到解决。问这个问题的那个人所经历的正是我所经历的,我想他也跟我一样。总之,以下是我迄今为止编写的所有PHP/HTML代码:

<?php
session_start();
?>

<?php
$form = "<form action='./login.php' method='post'>
<table>
<tr>
<td>Username:</td>
<td><input type='text' name='user' /></td>
</tr>

<td>Password:</td>
<td><input type='password' name='password' /></td>
</tr>

<td></td>
<td><input type='submit' name='loginbtn'  value='Login'/></td>
</tr>
</table>

</form>";

if ($_POST ['loginbtn']){
$user = $_POST['user'];
$user = $_POST['password'];


if ($user){ 
if ($password){ 
echo "$user - $password <hr /> $form";
}
else
echo "you must enter your password $form";

}
else
echo "you must enter your username $form";

}
else
echo $form;

?>


$password未正确定义,您正在下面的
if

中使用它。抱歉,这看起来不是一个很好的教程。首先,我看到您在页面上创建了loginID和password字段,但是在什么时候收到了用户
submit
?这些值传递给PHP、求值和返回的代码在哪里

我建议改为使用以下其他教程:



从您的代码中,我认为您将最熟悉phpAcademy的过程教程,但您应该真正学习OOP教程


其他意见:

(拆下的b/c康奈尔布狠狠地揍了我一顿——看他的回答。)

这个。。。您正在将用户和密码分配给同一个变量($user)。这就是为什么您有未定义的变量密码

还可以使用
htmlentities
来防止代码注入:

$user = htmlentities($_POST['user']);
$password = htmlentities($_POST['password']);

这段代码很难读懂……除了乱七八糟的代码外,你到底遇到了什么错误,你到底想达到什么目的?可怕的教程。旁注:不要用纯文本存储密码。我担心您的代码(SQL)的其余部分是开放的-您“正在”使用DB,对吗?哦,仍然存储在
.txt
?LovelyAnd change
$user=$\u POST['password']
$password=$\u POST['password']如果你还想让这个工作。非常感谢你的教程链接。它们看起来比我下面的教程好十倍。
$user = $_POST['user'];
$user = $_POST['password'];
$user = htmlentities($_POST['user']);
$password = htmlentities($_POST['password']);