2012-01-20 18 views
0

這裏有個想法。讀取cookie並使用jQuery顯示數據

我編碼聊天欄,我有一切正常運作。但我的問題是在瀏覽網站上的所有內容時保持連續性。我的意思是,聊天室保持打開狀態。就像Facebook一樣,每當你打開一個聊天框然後導航到一個不同的頁面時,它就會保持打開,你不必回到你的在線朋友列表並加載聊天框。

到目前爲止我做了什麼?

我想過使用的一種方法是使用cookie將會話的ID存儲在cookie中,並將其置於打開狀態還是關閉狀態。因此,如果對話的ID爲64,則Cookie被稱爲chat_64。我正在使用這個jQuery cookie文檔:https://github.com/carhartl/jquery-cookie

我一直在考慮將它們放到一個數組中,然後使用打開每個cookie的聊天框來完成。

我曾經問過關於如何做這件事的建議?

+0

你也可以使用php會話。發送ajax調用到設置變量的php頁面。 – mowwwalker

+0

你認爲這會更容易? – Frank

+0

我不認爲這會更困難,但我認爲它會更好。見alfa64的答案。您無法完全控制Cookie,並且它們受到客戶端條件的限制。 PHP會話將更加可靠。 – mowwwalker

回答

1

不要將這類信息存儲在cookie中,請在服務器中使用會話。這是一個很大的隱私風險。 存儲會話數據或使用數據庫,通過調用從數據庫中獲取當前聊天的php(例如)腳本,另一個功能是如果用戶註銷然後再次登錄,則聊天可以保留相同。 表可能是這樣的:

chat_id | user_id | chatting_with_id |時間戳

當用戶關閉聊天窗口中,你可能只設置一個時間限制爲用戶重新打開該窗口,如果他/她沒有,發送該行的刪除請求。

+0

好吧聽起來很棒,我只是想減少儘可能多的請求。作爲聊天欄或任何聊天系統,真的可以殺死你的服務器。 – Frank

+0

有沒有解決方法的數據,你只需要傳輸的東西。 – AlfredoVR

相關問題