我有PHP應用程序,其中包含三個小應用程序。每個應用程序都有自己的用戶,它們對所有系統都是唯一的我遇到會話管理問題。當一個用戶登錄server.com/app1
並寫入server.com/app2
第二個應用程序自動登錄該用戶。但此用戶對此應用程序沒有任何權利。在登錄頁面,我這樣做:會話管理問題
$status = $user->status;
if($status != 4) {
$auth_key = session_encrypt($userdata, $passdata);
$SQL = "UPDATE customer SET auth_key = '$auth_key'
WHERE username = '$userdata' ";
$auth_query = mysql_db_query($db, $SQL);
setcookie("auth_key", $auth_key, time() + 60 * 60 * 24 * 7, "/app1", "server.com", false, true);
// Assign variables to session
session_regenerate_id(true);
$session_id = $user->id;
$session_username = $userdata;
$_SESSION['cid'] = $session_id;
$_SESSION['username'] = $session_username;
$_SESSION['status'] = $status;
$_SESSION['user_lastactive'] = time();
header("Location: index.php");
exit;
}
但這不起作用。有人可以幫助我如何修理我的課程。謝謝:)
我沒有看到在代碼中正確驗證測試的部分,用戶是否可以自動登錄? – 2011-05-21 08:39:34
BTW:什麼是session_encrypt?它是由你定義的函數,PHP只有一個sessino_encode函數。 – 2011-05-21 08:41:54
session_encrypt是我的功能。我應該在哪裏測試正確的身份驗證? – 2011-05-21 08:43:28