ユーザーがシステムにログインすると、セッション変数が$_SESSION['logged_in'] = 1;
あり、各ページで変数をチェックして、ユーザーがログインしているかどうかを確認します。これは正常に機能します。
session_start();
if (!$_SESSION['logged_in']) {
header("location: https://mydomain.com/cpanel/login.php");
exit();
}
しかし今、メンテナンスを容易にするために、このセッション チェッカーをインクルード ファイルに追加し、すべての安全なページの先頭に含めたいと考えています。ただし、ログインするたびに失敗します。
これは、インクルード ファイルの内容です。
// start session
session_start();
// check login session
if (!$_SESSION['logged_in']) {
header("location: https://mydomain.com/cpanel/login.php");
exit();
}
そして、これは私が各ページのヘッダーに追加したものです:
// load authentication file
include "../includes/authentication/check.php";
しかし$_SESSION
、私は間違いなくログインしているのに、 が空であるように見えます。session_start();
どうにかして再取得しているのではないかと思ったので、インクルード ファイルから を削除しようとしましたが、そうではありませんでした。
ここで何がうまくいかないのか、手がかりを得た人はいますか?