現在、$ _SESSIONで変数をテストしていて、isset()
がfalseを返した場合、セッションがタイムアウトしてログインページが表示されたと仮定します。PHPセッションがタイムアウトしたかどうかを確認する方法
session_start();
if (isset($_POST['login'])):
// Process login credentials
$_SESSION['account'] = Array('user'=>'username');
endif;
if (! isset($_SESSION['account'])):
// User not logged in, show login page
else:
// User is logged in, show account page
endif;
ただし、アカウントページが空白であることをユーザーが最近報告しました。上記の私のコードは何らかの形で欠陥があるので、私はセッションデータが利用できないと仮定します。セッションがPHPでタイムアウトしたかどうかを正しくテストするための正しい指示を誰かに教えてもらえますか?
これは空の '$ _SESSION ['account']'変数の場合ですか?または期待値が含まれていない可能性がありますか? – linuxeasy
ああ、あなたは正しいかもしれません!あなたはコードの残りの部分を検索するように促し、$ _SESSION ['account'] = Array();を発見しました。(後でアカウント情報を入力する必要があります。上のコードの残りの部分はかなり堅牢ですか? – Tak
ええ、それはそうだ! – linuxeasy