即時通訊在我的一個小測試端上銷燬我的會話時遇到了麻煩。註銷/銷燬會話時出現的問題
我可以從我的code_login.php文件和header()登錄到需要登錄的其他頁面。但是,當我退出時,即使我退出了,有時也可以返回該頁面。
(在session_start()是我的所有網頁的頂部)
這是我的登錄代碼:
$res = $db->query($sql);
$num = $res->num_rows;
if ($num == 1) {
$_SESSION['user'] = array(
'username' => $username;
);
}
這裏是註銷:
session_start();
$_SESSION = array();
session_destroy();
header('LOCATION: index.php?loggedOut');
這是頂我的頁面需要登錄
session_start();
if (isset($_SESSION['user'])) {
require some stuff;
} else {
header('LOCATION: index.php?loginNeeded');
}
但是有時候我仍然可以在登錄後返回到登錄頁面。
這可能會帶給你一些快樂 http://stackoverflow.com/questions/3948230/best-way-to-completely-destroy-a-session-even-if-the-br owss-is-not-closed – Matt