如何显示论坛帖子的未读/读取状态,如vbulletin,phpbb,其他?

时间:2010-01-13 15:32:11

标签: php cookies forums

这是百万美元的问题,我在这里和其他php编码相关的网站和论坛上一次又一次地看到它,但我从来没有看到它的答案。

所以我开始深入研究一些大型高流量论坛如何实现这一功能,向您展示哪些线程中有新的未读帖子,并且看起来他们将线程ID号存储到用户cookie中。因此,会有一个cookie,其中包含您在一定时间内读取的每个线程的线程ID。或类似的东西。

我在这里读到,cookie只能存储X个字符,所以我想知道cookie中可以存储多少数据?如果我有一个5-6个字符的ID号,我可以装入多少个cookie?

3 个答案:

答案 0 :(得分:1)

  

更重要的是,cookie规范说浏览器每个域只需要接受20个cookie。 Firefox的此限制增加到50,Opera增加到30,但IE6和IE7强制每个域限制20个cookie。任何超出此限制的cookie都将淘汰较旧的cookie或被浏览器忽略/拒绝。

取自this author's post

我相信论坛帖子的未读/阅读状态应该通过数据库来完成。我在网上找不到一个例子,但我读过"PHP and MySQL Web Development (4th Edition)",他们有一节致力于开发你自己的论坛页面。他们提供示例代码并解释启动它的过程。

答案 1 :(得分:0)

Cookie限制在ie:

最多300个饼干

每个cookie最多4096个字节(通过Set-Cookie标头的语法描述中构成cookie非终端的字符大小来衡量)

每个唯一主机或域名最多20个Cookie

答案 2 :(得分:0)

我不认为他们使用cookie,因为如果你切换计算机不会持续存在(除非它是某些框架提供的基于数据库的cookie)。我假设他们在数据库中有一个关系表,用于跟踪用户查看线程的最新日期。