显示用户未读的线程或帖子


showing threads or posts unread by a user

我正在编写自己的基本论坛,以插入代码igntier网站。我有点纠结于如何显示用户未读的线程/最新帖子。

我想用一个表来保存访问的每个thread_id,但这个表可能会变得相当大。

有哪些方法可以满足这一要求?

一个简单的想法:记录用户访问站点/论坛/子论坛的最后日期时间。这可以像线程或子论坛一样细粒度,根据您的喜好。也许可以在cookie中创建/更新thread_idlast_visit_date的键值对。也许将其存储在cookie中,而不是RDBMS中。问:这是关键任务数据,还是一个可以/不能承受数据丢失的重要功能?

当用户返回时,查找论坛的create_date大于last_visit_date的所有线程/帖子。

我假设访问论坛(线程列表)的行为与"查看"相同。假设如果提供了信息,那么不管你是否真的钻入了线程,你都已经"查看"了线程标题。

最简单的方法可能只是保留用户上次访问的cookie,并在此之后发布/编辑查询帖子。你并不能完全获得所有的阅读线程,但大多数论坛似乎都是这样工作的,否则你必须将所有阅读线程保存在某个地方。

我不认为你真的需要像你所想的那样创建任何表来记录线程ID,因为它会随着用户的规模和创建的线程/帖子的数量而增长。您只能将用户上次访问后创建的线程或帖子显示为未读。我想这就是我要做的。