2013-08-07 48 views
-1

我有一個網站,成員必須登錄,但我注意到他們可以簡單地在瀏覽器中輸入任何頁面url並返回,而無需使用登錄表單,我怎麼防止這一點。防止用戶通過輸入緩存的URL訪問成員頁面

我的意思是我相信這是爲我檢查,如果會議是在所有頁面上有效的一種方式。即使非用戶可以把網址在瀏覽器中,並無需登錄進入。

+1

通過登錄他們出去/檢查登錄是否正確?你目前如何處理這些任務? (請更新有關代碼段你的問題。) –

+0

使用[** **會話(http://php.net/manual/en/features.sessions.php)也許[** **令牌( http://php.net/manual/en/function.token-get-all.php)。你現在在用什麼,你能展示你的代碼明智嗎? –

+0

無效在註銷用戶高速緩存(模糊的問題,含混地回答) –

回答

0

在PHP中使用會話變量。

session_start(); 
$_SESSION['login'] = true; 

這基本上創建了一個名爲可用於驗證用戶是否登錄「登錄」會話變量 現在,所有你需要做的就是檢查這樣的變量:

if($_SESSION['login'] == true){ 
    /*GOTO USER PAGE*/ 
}else{ 
    /*REDIRECT SOMEWHERE ELSE */ 
} 

要建立一個註銷按鈕,以確保用戶不能再複製粘貼網址並回車,

session_destroy(); 

會工作得很好。

+0

我怎麼加如果它沒有登錄,它將重定向頁面-else {/ * REDIRECT SOMEWHERE ELSE */- @KaniskaGanguly我可以使用標題嗎? – user2636507

0

你需要做的就是創建一個使用類似會話的正確登錄系統是什麼。有無數的教程可以通過搜索「php會話教程」找到。 Here就是其中的一個結果。

在所有這些的心臟是PHP的會話,允許您將這些信息保存在他們的瀏覽器會話特定的客戶端。要了解在PHP會議上,這裏有一個basic tutorial

讓我知道這些道理,或者如果您有任何疑問:)

+0

這的確是有用的 – user2636507

相關問題