Web サイトでログインを再構築しようとしています。Web サイトを継承しましたが、ログインは現在 ajax で構築されており、ログインに時間がかかります。
ユーザーがログインできるように次のように書きました...
<form name="form1" method="post" action="checklogin.php">
<input name="myusername" type="text" id="myusername">
<input name="mypassword" type="text" id="mypassword">
<input type="submit" name="Submit" value="Login">
</form>
ログインが成功すると、ユーザーはリダイレクトされます...
header("location:earn-credits.php");
私の問題は、ユーザーが「Earn-credits」ページに送信されると、ユーザーがログインしていることを確認するチェックがあり、ログインしていない場合はユーザーをホームページに送り返すことです...
if(!$usersClass->checkLoggedIn()) {
header("Location: /index.php");
}
これで、ユーザーがリダイレクトされ、エラー メッセージが表示されないため、上記のフォームでログインしていることがわかりました。
私はPHPとAJAXを初めて使用するので、これはなぜですか? クッキーを設定する必要がありますか?
以下は、ユーザーがログインしていることを確認するための私のクラスです...
/**
* check if user is logged in
*/
public function checkLoggedIn()
{
if(isset($_SESSION['loggedIn']))
{
if(isset($_SESSION['loggedIn']['id']) &&
isset($_SESSION['loggedIn']['username']) &&
isset($_SESSION['loggedIn']['password']) &&
isset($_SESSION['loggedIn']['credits']) &&
isset($_SESSION['loggedIn']['active'])) {
return true;
}
}
return false;
}