2012-06-19 92 views
-3

我有一個網站,當我用兩個瀏覽器登錄同一個用戶時,session_id()告訴我相同的值。它錯了嗎?如何區分這兩個用戶?PHP,爲什麼會話ID是從兩個瀏覽器相同?

+7

這應該是不可能的,除非你[通過URL傳遞會話ID](http://bg2.php.net/manual/en/session.idpassing.php)並打開了相同的會話ID在這兩個瀏覽器中都包含URL。 – lanzz

+6

我希望你的意思是兩個不同的瀏覽器,而不是同一個瀏覽器的兩個窗口。 – mensi

+2

注意:如果您複製了會話ID,請檢查以下內容:http://en.wikipedia.org/wiki/Session_hijacking#Prevention –

回答

1

更新/編輯:谷歌瀏覽器似乎有一個嚴重的問題,正是你寫的,看到這Chrome is creating duplicate sessions with the same idhttp://code.google.com/p/webug/issues/detail?id=12欲瞭解更多信息。

我的舊的答案:

如果你真的使用兩個不同的瀏覽器,那麼你可能

  1. 使用是基於非服務器會話腳本或
  2. 您通過提供會話(url參數?)或
  3. 你正在使用一個非常奇怪的會話系統(是的,我已經看到了),它通過IP跟蹤用戶。

典型的PHP會話創建爲在服務器上的文件系統文件, 所以一個「新的瀏覽器」不知道這個會議和瀏覽器有你沒有資料,它可以發送到服務器。

如果你想要一個真正的答案,顯示一些代碼,花花公子。

相關問題