所以我无法弄清楚我的 PHP 出了什么问题导致了这个问题。正如您将从代码中看到的,我根据 if 语句进行了回显。如果详细信息与查询相同,那么它将回显 Test2。但为什么它不重定向呢?我不知道出了什么问题。
<?php
include "../inc/db.php";
include "../inc/functions.php";
$tip = "";
if(isset($_POST["submit"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$username = mysqli_real_escape_string($connection, $username);
$password = mysqli_real_escape_string($connection, $password);
$query = "SELECT * FROM users WHERE username = '{$username}' ";
$select_user_query = mysqli_query($connection, $query);
if(!$select_user_query) {
die("Query failed. Reason: " . mysqli_error($connection));
}
while($row = mysqli_fetch_array($select_user_query)) {
$db_user_id = $row['id'];
$db_username = $row['username'];
$db_password = $row['password'];
}
if($username !== $db_username && $password !== $db_password ) {
header("Location index.php");
$tip = "Incorrect details!";
echo "Test1";
} elseif ($username == $db_username && $password == $db_password) {
header("Location ");
echo "Test2";
} else {
header("Location index.php");
echo "Test3";
}
}
?>
如果我输入 mysql 数据库中不存在的内容,那么我会得到以下信息:
但是我在while循环中定义了变量
最佳答案
header("Location dashboard.php");
缺少分号
header("Location: dashboard.php");
我傻了...
关于PHP 不会重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42493705/