簡體   English   中英

如何顯示論壇帖子(如vbulletin,phpbb等)的未讀/已讀狀態?

[英]How to show unread/read status of forum post's like vbulletin, phpbb, others?

這是一百萬美元的問題,我在這里和其他與php編碼相關的網站和論壇上一次又一次看到它,但是我從未見過答案。

因此,我開始進行研究,研究一些大型的高流量論壇如何實現此功能,向您顯示哪些線程中有新的未讀帖子,以及它們似乎將線程ID號存儲到用戶cookie中。 因此,將存在一個Cookie,其中包含您在一定時間內讀取的每個線程的線程ID。 或類似的東西。

然后,我在這里繼續讀到Cookie只能存儲X個字符,因此我想知道cookie中可以存儲多少數據? 如果我有5到6個字符的ID號,我可以在cookie中容納多少個?

不過,更重要的是,Cookie規范指出,瀏覽器每個域只需要接受20個Cookie。 Firefox將該限制增加到50,Opera將該限制增加到30,但是IE6和IE7強制每個域限制20個cookie。 任何超出此限制的cookie都將淘汰較舊的cookie或被瀏覽器忽略/拒絕。

摘自作者的帖子

我認為對於論壇帖子的未讀/已讀狀態,應該通過數據庫來完成。 我找不到在線示例,但是我已經閱讀了“ PHP和MySQL Web開發(第4版)”,並且他們有專門用於開發自己的論壇頁面的部分。 他們提供示例代碼並解釋啟動它的過程。

Cookie限制,即:

最多300個餅干

每個cookie最多4096個字節(根據Set-Cookie標頭的語法說明中構成cookie非終端字符的大小來衡量)

每個唯一主機或域名最多20個Cookie

我不認為它們使用cookie,因為如果您切換計算機,該cookie不會持久(除非某些框架提供基於DB的cookie)。 我假設他們在數據庫中有一個關系表,用於跟蹤用戶查看線程的最新日期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM