簡體   English   中英

注銷后刪除會話

[英]Deleting session after log out

用戶從會話注銷后,刪除會話存在問題。 例如,Ben使用他的用戶名和密碼登錄。 登錄后,將出現一個屏幕,屏幕上顯示“ Welcome Ben”。 Ben現在注銷,出現一個屏幕,表明注銷已成功。 然后,Lisa使用自己的用戶名和密碼登錄。 登錄后出現一個屏幕,但是屏幕上仍然顯示“ Welcome Ben”。 Lisa刷新頁面,“ Welcome Bem”現在更改為“ Welcome Lisa”。 因此很明顯,注銷后會話未正確刪除。 我只是想知道是否有人可以注銷后幫助刪除Cookie

這是我正在使用的代碼:

<?php 
   session_start(); 
   $_SESSION['User']=" "; 
   $_SESSION['Name']=" "; 
   session_destroy(); 
   header("Location: login.php"); // Redirecting To Home Page 
?>

它可能不會刪除您的cookie。在索引頁上,使用以下代碼

header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");

它可以解決您的問題。

您可以嘗試將會話設置為空白,然后取消設置會話,如下所示:

$_SESSION['User'] = '';
$_SESSION['Name'] = '';
unset($_SESSION['User']);
unset($_SESSION['Name']);

然而,僅未解決的問題應該綽綽有余。

完成的腳本應如下所示:

<?php 
    session_start();
    unset($_SESSION['User']);
    unset($_SESSION['Name']);
    header("Location: login.php"); 
    // Redirecting To Home Page 
?> 

試試這個它的工作:

logout.php

  <?php
    session_start();

    unset($_SESSION["user"]);

    header("location:login.php");
    ?>

嘗試這個...

<?php
if(isset($_SESSION['User']) AND isset($_SESSION['Name'])){
    unset($_SESSION['User']);
    unset($_SESSION['Name']);
    header("Location: login.php");
}
else{
header("Location: login.php");
}
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM