私はPHPでログインページを作成しています。私は彼らがうまくログインした後、自動ページにユーザーをリダイレクトしたい。私はpdoを使っているので、require_onceを使ってpdo.phpを呼び出しています。ただし、このコード行は、指定されたページのリダイレクトを防止します。 require_onceコードを削除した場合、私はcancleを打った後、インデックスページに正常に戻ることができます。次のコードは何も出力を例えば末尾に空白または行で、あなたのPHPに必要なファイルが送信されないページRequire_onceがPHPをリダイレクトできないようにします
<?php
require_once "pdo.php";
require_once "bootstrap.php";
if (isset($_POST['cancel'])) {
// Redirect the browser to game.php
header("Location: index.php");
return;
}
$failure = false;
if (isset($_POST['email']) && isset($_POST['password']) ) {
if (strlen($_POST['email']) < 1 || strlen($_POST['password']) < 1) {
$failure = "User name and password are required";
}
else if (strpos($_POST['email'], '@')!== false)
{
$e = htmlentities($_POST['email']);
$p = htmlentities($_POST['password']);
$sql = "SELECT email FROM users
WHERE email = '$e'
AND password = '$p'";
echo "<p>$sql</p>\n";
$stmt = $pdo->query($sql);
$row = $stmt->fetch(PDO::FETCH_ASSOC);
var_dump($row);
echo "-->\n";
if ($row === FALSE) {
echo "Incorrect password";
}
else {
header("Location: autos.php?name=".urlencode($_POST['email']));
return;
}
}
else
{
$failure = "Email must have an at-sign (@)";
}
}
?>
おそらくファイルが存在しないため、コードの実行が停止している可能性があります。 –
ログを確認します。エラーは何ですか? –
あなたは 'の場合(ISSET($ _ POST [ 'キャンセル']))の後に' 'require_once'を使用しようとしたことがありますか? – DrKey