0
我想知道在我的應用程序中,主要是php,這是最好的方法,以保持用戶登錄到一個網站,直到他們已經註銷。它可能是令牌,會話生活,餅乾等?保持用戶登錄的最佳方法?
目前,這是我的登錄和註銷系統是如何工作的:
當用戶登錄時,它存儲在細節上的$ _SESSION:
if (isset($_SESSION['teacherid'])) {
$userid = $_SESSION['teacherid'];
}
if (isset($_SESSION['teacherusername'])) {
$username = $_SESSION['teacherusername'];
}
然後在每個腳本中含有下面,說明由sessionlife持續12小時的代碼:
<?php
ini_set('session.gc_maxlifetime',12*60*60);
ini_set('session.gc_divisor', '1');
ini_set('session.gc_probability', '1');
ini_set('session.cookie_lifetime', '0');
require_once 'init.php';
session_start();
?>
的init.php是此以下:
<?php
session_save_path('Session');
?>
現在,下一次用戶刷新頁面,會話將被銷燬12小時後,它進入註銷頁:
if ((isset($username)) && (isset($userid))){
session_destroy();
echo "You have been Logged Out | <a href='./home.php'>Home</a>";
}
else {
echo "You are Not Logged In";
}
顯然,如果註銷頁面上的用戶點擊,然後將定位上面的腳本。
但這是做這件事的好方法嗎?有沒有更方便的方法,因爲如果您查看正確的Web應用程序,他們可以讓用戶登錄幾天,但他們如何做到這一點?
感謝
當然使用cookie是此功能必不可少的 - 和你的餅乾可以住了一個月或更長的時間,直到刪除... + 1 – shadyyx
也可用於做xss攻擊(對於黑客) – Waqas