2
目前我一直在$ _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