瀏覽器。這就是爲什麼你可以打開新的窗口/標籤,例如。
所以我們不能使用cookie來創建會話,而是我們需要發送會話信息與URL中的每個請求。
選項1:使其成爲單頁網站並使用ajax加載數據。
方法2:在用戶的URL會話ID:■
編輯:更簡單的辦法是讓用戶使用隱身模式。然後會話不與其他實例共享。我使用它在不同的Gmail帳戶有時登錄兩次。 (不同的瀏覽器供應商用自己的名稱調用函數)
編輯2:首先,會話由服務器在瀏覽器中設置cookie創建。該cookie只包含一個「隨機」字符串。該字符串可以對應於服務器上的文件(最常見)或數據庫中的一行(實際上,如果您有多個Web服務器,並且前面有一個負載均衡器,如果另一個用戶在哪裏猜這個隨機字符串,他將訪問到用戶會話(這也被稱爲會話劫持)
而不是存儲在cookie中的會話,你可以保持它的URL像http://www.example.com/?sess_id=jdR3Tfs
。你可以很容易地建立這個邏輯你自己,但在大多數Web框架都有幫助人員來做這件事,例如在PHP中使用
在php中設置。INI
session.use_cookies=0
session.use_trans_sid=1
有時它需要手動抓取會話ID在上述配置,如果我沒記錯的話應該是這樣的:
session_id($_GET['sessionid']);
session_start();
或
session_id($_GET['PHPSESSID']);
session_start();
可以肯定的你可以做print_r($_GET)
或直觀地看看這個創建的URL。
否則,你可以更多的手動
<?php
// testpage.php
session_start();
if (isset($_SESSION['test']){
$_SESSION['test'] = 'Back again!';
}
$_SESSION['test'] = 'Hello world!';
?>
<p><?php echo $_SESSION['test']; ?></p>
<a href="testpage.php?<?php echo htmlspecialchars(SID); ?>">Click me</a>.
編輯3做到這一點: 另一種方式,當你仍然可以使用的cookies是用戶啓用了「隱私瀏覽」,請參閱如何啓用此http://techlogon.com/2012/05/10/comparison-of-private-browsing-in-ie-chrome-and-firefox/更多信息
發佈您的代碼,您如何爲會話分配值 –
如此簡單。如果登錄是從管理登錄部分,然後'$ _SESSION ['admin_user'] = 1',如果它是從用戶登錄部分,然後會話變量分配2. –
從我理解你分配一個不同的值到同一個變量,你可能應該有兩個變量:$ _SESSION ['is_admin'] = 1,$ _SESSION ['is_user'] = 1 – wakooka