我寫了這段代碼,但它不起作用。只需檢查一些用戶是否已登錄(在瀏覽器中),如果是,則不顯示登錄頁面 - 將用戶重定向到儀表板。如何使用瀏覽器管理會話
<?php
session_start();
if(isset($_SESSION['usr']))
{
header('location:dashboard.php');
}
error_reporting(0);
?>
我寫了這段代碼,但它不起作用。只需檢查一些用戶是否已登錄(在瀏覽器中),如果是,則不顯示登錄頁面 - 將用戶重定向到儀表板。如何使用瀏覽器管理會話
<?php
session_start();
if(isset($_SESSION['usr']))
{
header('location:dashboard.php');
}
error_reporting(0);
?>
<?php
session_start();
echo $_SESSION['usr']; //just to check
if(isset($_SESSION['usr']))
{
header('location:dashboard.php');
}
else
{
header('location:login.php');
}
?>
檢查正確的是$ _SESSION [ 'USR']是正確的。它是這樣的usr或用戶名嗎?上面的代碼是正確的。如果它仍然不起作用,則意味着在設置該會話時發生錯誤。重新檢查代碼,以後登錄表單。試試echo $ _SESSION ['usr']。所以它會讓事情更加清晰
最新的問題是什麼?它是在登錄頁面 –
就像更多的信息,什麼是$ _SESSION ['usr']'? 'string','boolean','object'等。另外,在'header('location:dashboard.php')後面放置'exit;'可能是一個好主意;'這樣腳本立即終止在發送重定向頭之後,在發送頭之後,不要對會話進行任何重要的修改。 [PHP會話安全]的 – War10ck
可能重複(http://stackoverflow.com/questions/328/php-session-security) – bodi0