我问的问题是在这里问的,但是很糟糕地问,导致问题未解决。问这个问题正在经历的那个人正是我正在经历的,我认为他和我遵循的YouTube教程相同。无论如何,这是我编写的所有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;
?>
我尝试在if ($user){
和if ($password){
中添加一个变量,但这一无所获。有人知道问题可能是什么?
$user = $_POST['user'];
$user = $_POST['password'];
$密码未正确定义,并且您在下面的if
中使用它
$user = $_POST['user'];
$user = $_POST['password'];
这个...您将用户和密码分配给同一变量($用户)。这就是为什么您有未定义的可变密码。
也使用htmlentities
来防止注入代码:
$user = htmlentities($_POST['user']);
$password = htmlentities($_POST['password']);
对不起,这看起来不像是一个很好的教程。一方面,我看到您在页面上创建登录和密码字段,但是在收到的用户submit
什么时候?这些值将这些值传递给PHP,评估并返回的代码在哪里?
我建议这些其他教程:
phpacademy-注册和登录 - OOP版本
phpacademy-注册和登录 - 程序版本
thenewboston -Project Lisa(adv)
从您的代码中,我认为您将对Phpacademy的程序教程感到最舒服,但您应该真正学习OOP。
其他评论:
(删除B/C Cornelb击败了我 - 见他的答案。)