この問題の原因となっている私のPHPでは何が問題なのでしょうか?コードからわかるように、私はif文に基づいてエコーしました。詳細がクエリと等しい場合、Test2がエコーします。しかし、なぜそれはリダイレクトしませんか?何が間違っているのかわかりません。PHPリダイレクトされません
<?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データベースに存在するdoesntの何かを入力した場合dashboard.phpは
しかし、whileループで変数を定義しました
01リダイレクト後に `;
がありませんでした。とにかくページを離れる場合は、リダイレクト後に何かをエコーしますか?他の何か、あなたの最初のif *と* '&|'の代わりに*または* '||'にする必要があります。 – eeetee
3番目の画像(2番目の質問?)は、結果がないときに反復する行$ db_usernameと$ db_passwordは宣言されていません。 –
'header'の' location'の後ろにコロンがありません。あなたはあなたのパスワードをハッシュする必要があります。 – chris85