有這個問題。我知道在互聯網上有很多這樣的問題,但他們似乎都沒有爲我做的伎倆:(不同頁面的PHP會話
所以我打算在網站上做一個adminpanel。你通過通過登錄進入屏幕上,當名稱+密碼正確時,會話被創建,在其他的管理頁面上,我將測試該會話是否已設置,通過這個我會知道用戶是否可以訪問該頁面或不是。 PHP(simplyfied)
<?php session_start(); ?> <html ...
然後大量的控制後
if ($adminpwd == $pass) {
session_regenerate_id();
$_SESSION["mysessionname"] = $name;
$tijd = date('H:i:s', strtotime('+ 30 minutes'));
$_SESSION["E4A_einde"] = $tijd;
session_write_close();
echo "<script type='text/javascript'>window.location = 'myotheradminpage'</script>";
}
我的其他PHP頁面包括這個腳本
<?php session_start();
if (!isset($_SESSION["mysessionname"])) {
session_destroy();
echo '<SCRIPT LANGUAGE="JavaScript"> window.alert("no session found") </SCRIPT>';
echo "<script type='text/javascript'>window.location = 'myloginpage'</script>";
}
與此元素,如果會話未設置有一個重定向,如果會話設置PHP頁面上的其他代碼西港島線觸發。
但事實是,每一次我重新導向到我的登錄頁面。所以我的會議沒有設置:■無法弄清楚爲什麼所以請幫助我。
我嘗試了很多變薄與每個頁面上添加在session_start()梅索德,我試圖重新生成會話ID之前,我設置的會議,但沒有任何工程..
@ Mr.Alien'javascript' – itachi
@itachi我有PHP的眼睛...大聲笑只是看到並刪除了我的評論 –
看[header](http://php.net/manual/en/function.header .php)有一種在服務器端重定向的方法。 – itachi