ログインページを作ろうとしています。ユーザー名をセッションとして登録しようとすると、別のページにリダイレクトされ、そのセッションが登録されていないかどうかが確認されます。そうでない場合は、ログイン ページにリダイレクトされます。まあ、2ページ目で失敗したと思います。
ログイン.php:
if($count==1){$_SESSION['user'] = $username;$_SESSION['pass'] = $password;header("location:Login_Success.php");}
else{echo "<p style='color:red'>Wrong username or password!</p>";}
login_success.php:
session_start();
if(!isset($_SESSION['username'], $_SESSION['password'])){
header("location:login.php");}
エラー:セッションが登録されていません! を に置き換えたところ、「What the--?!」と表示されたのでわかり header("location:url");
ますecho "What the--?!"
。
答え
セッションの値が正しくありませんでした。新しいコードは次のとおりです。
ログイン.php:
if($count==1){$_SESSION['user'] = "username" //Here was the problem
or die(mysql_error());header("location: Login_Success.php");}
else{echo "<p style='color:red;margin-left:150px;'>Wrong username or password!</p>";}
Login_Success.php:
session_start();
if($_SESSION['user']!="username")//"username" is here too
{header("location: login.php");}