2013-04-03 110 views
-1

我正在構建我的教程網站。爲此我有登錄設施。會議開始後,我的主頁將打開。我將有多個網頁,當我點擊鏈接會話必須繼續下一個連續頁面。因此,最左上角的變量用戶名將保留到會話過期(按下登出時)。怎麼做?請幫幫我。如何檢查會話是否過期或在每個網頁php?

+0

如果您的查詢已解決,請考慮選擇其中一個答案作爲正確答案。 – LoneWOLFs

回答

1

試試這個

if(isset($_SESSION['your_sess_name']) && !empty($_SESSION['your_sess_name'])) { 
    echo 'your session exists'; 
} 

註銷

unset($_SESSION['your_sess_name']); 
session_destroy(); 
+0

只是使用session_start();在頁面的頂部對於這個問題已經足夠了。我找到了答案,謝謝。 –

+0

如果你找到答案然後接受它,閱讀常見問題的細節。 – DS9

+0

我不讓你兄弟!你什麼意思? –

1

包括session_start();在每個地方,你需要會話的網頁的第一道防線。它不好打開每頁和每頁。

另外要檢查,如果會議是開放與否,你可以包括下面的代碼

<?php 
if(strlen(sessionid()) > 0){ 
    //session exists 
    echo "Session Started!"; 
}else{ 
    echo "No Session Found!"; 
} 
?> 

您還可以在一個單一的文件上面的代碼,並要求其在需要的會話頁面。

+0

多數民衆贊成在一個簡單的答案對嗎?我想你的答案幫助我..謝謝你LoneWOLFs –

+0

@FranklinVaz我的榮幸... – LoneWOLFs

1

SESSION是非持久cookie,它將在所有頁面上可用,直到瀏覽器關閉。 SESSION的最大使用期限取決於您在該會話中停留的時間,一旦您關閉了瀏覽器窗口,會話將由瀏覽器終止。

簡單地說,在所有的PHP文件的頂部:您可以撥打:

<?php 
session_start(); 
if(isset($_SESSION['name']) && $_SESSION['name'] == 'some value')){ 

} 
?> 
+0

謝謝。有效 –

1

首先創建一個文件作爲config.php。在這個文件中寫你的條件像這樣的:

session_start(); 
if((!isset($_SESSION['session_name'])) and (!isset($_GET['lgact']))) 
{ 
header("location:".SITE_URL."index.php"); 
exit; 
} 

,然後就在您的網頁文件。 include("config.php");
希望這是你找到的。