[英]Redirection from logout.php page to index.php doesn't work
我有一個鏈接在pagetop.php中的logout.php頁面,但是當登錄的用戶按下logout按鈕時,它不會將他們重定向回索引頁面。
注銷腳本:
<?php
session_start();
$_SESSION = array();
session_destroy();
header('Location: index.php');
?>
這是在我的pagetop.php頁面中找到的href代碼:
<?php
if($_SESSION['loggedin'] != TRUE){
echo "Already a member?
<form id=\"loginform\" method=\"post\" action=" . $_SERVER['PHP_SELF'] . "
<label for=\"username\"> Email Address:</label>
<input type=\"text\" name=\"liusername\"/>
<br>
<label for=\"password\"> Password:</label>
<input type=\"text\" name=\"lipassword\" id=\"password\" />
</div>
<div class=\"submit\">
<input name=\"lisubmit\" type=\"submit\" value=\"submit\">
</div>\n";
}else{
echo "<a href = logout.php>Log out</A>\n";
}
?>
刪除$_SESSION = array()
並添加exit;
在header();
。 您正在用會話分配覆蓋全局變量, session_destroy()
清除實際會話,因此不清除任何內容。 同樣,在header之后退出也是個好習慣,即使您沒有任何腳本,也應始終阻止執行header()
下面的腳本。
您的代碼是完美的,但是這里有些錯誤刪除$_SESSION = array()
這里$session
已經啟動,因此它將刪除,並且header()
用於將頁面重定向到另一個頁面。
<?php
session_destroy();
header('Location: index.php');
exit();
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.