我正在尝试建立一个登录页面;现在这是非常基础的,稍后我将实现安全控制。 与数据库的连接已经过测试,并且工作正常。 login.php仅包含带有2个字段,电子邮件和密码的表单。 以下是login2.php
<?php
session_start();
include "conn.php";
$email = $_POST["email"];
$password = $_POST["password"];
$sql = "SELECT * FROM users WHERE email = '$email' and password = '$password'";
$result = mysqli_query($conn,$sql);
$row = mysqli_fetch_array($result);
$count = mysqli_num_rows($result);
if($count == 1){
$_SESSION['id'] = $row["id"];
header('Location: dashboard.php');
}else{
echo "Username or Password invalid";
}
?>
发生的事情是,如果电子邮件和密码错误,则出现预期的错误,如果电子邮件和密码正确,则重定向至页面dashboard.php无效,并且重定向至login.php页面。 我试图用回显替换标头位置的行以打印出用户ID,并且它可以正常工作,因此所有代码似乎都不错,只有标头位置行无效。 为了避免在标题之前输出,我尝试清理所有空格,并且还检查了没有BOM的UTF-8文件的编码。 我在做什么错了?