我有一個網站具有登錄功能,我想要的是如果用戶從一臺計算機登錄到他的帳戶,然後再次登錄到他的同一帳戶同時從另一臺計算機他應該首先從他登錄的計算機上註銷。任何想法如何實現它都會很棒。PHP多次登錄
Q
PHP多次登錄
0
A
回答
1
假設您使用的是基於cookie的會話,最好的方法是跟蹤每個用戶的最後一個活動會話ID。這樣,當用戶從另一臺計算機上登錄時,最後一個活動會話ID得到更新,並且當他試圖在前一個會話中繼續時,您可以捕獲並結束舊會話。
2
您需要將會話存儲在數據庫中。在那裏你可以有一個包含會話(session_id,用戶名,session_data)的表。 session_id和session_data是自我解釋的。您使用「用戶名」字段來存儲登錄用戶的名稱。如果用戶從另一臺計算機再次登錄,則可以輕鬆地查詢該表並刪除重複的會話。
在網絡上有很多數據庫支持的會話處理的PHP實現可用。
相關問題
- 1. PHP - 上次登錄
- 2. 多次登錄PDF
- 3. PHP和SQL上次登錄
- 4. 多次登錄域選項
- 5. 在cakephp中多次登錄
- 6. 防止多次登錄Servlets
- 7. 安卓log4j多次登錄
- 8. Firebase多次登錄用戶
- 9. ActionCable多次登錄用戶
- 10. 多次登錄問題
- 11. 以PHP記錄登錄嘗試次數
- 12. PHP登錄腳本需要用戶登錄兩次
- 13. 由於重定向,php登錄代碼需要登錄兩次
- 14. 多次登錄嘗試後阻止用戶登錄
- 15. 防止多登錄導致錯誤,並防止再次登錄
- 16. 第一次登錄PHP會話
- 17. 一次登錄多個網站的腳本。嘗試CURL和PHP。
- 18. 如何防止PHP網站中的多次登錄
- 19. php登錄和Facebook登錄
- 20. 我應該允許多次登錄嗎?
- 21. 要求多次嘗試登錄的SSO
- 22. 一個market.android.com/publish帳戶多次登錄
- 23. Rails Authlogic防止多次登錄
- 24. 使用Laravel 5.0多次登錄
- 25. 不要允許用戶多次登錄
- 26. iOS多次登錄Dropbox帳戶
- 27. Django的 - 多次登錄重定向
- 28. 限制用戶的多次登錄
- 29. 在YII上停止多次登錄?
- 30. Angular2 ngrx/store有多次登錄嘗試
你會如何比較兩個會話?使用基於文件的會話無法訪問第二個會話的實際會話數據,因此無法比較哪個會話已更新。 – halfdan 2010-09-21 12:57:34
「以及何時他試圖繼續上一次會話」但我想要的是,它不應該取決於用戶試圖繼續但異步如果用戶回到他登錄到第一個時刻的第一臺計算機那麼他應該有一個彈出窗口說他再次登錄他。請讓我知道,如果我是有道理的。 – pcraft 2010-09-21 13:08:04
從功能上講,這是一回事。只要用戶無法再訪問它,無論您的舊會話是否仍然逗留(直到它超時),都不是真正相關的。如果用戶未向服務器發送請求,則無法從用戶的計算機上刪除cookie。 – tdammers 2010-09-21 13:09:45