2011-06-14 85 views
1

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

我正在考虑保存每个thread_id访问过的表,但这个表有可能变得相当大。

有什么办法可以达到这个要求?

回答

2

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

当用户返回时,找到所有主题/帖子,其create_date大于last_visit_date的论坛。

我假设访问论坛(线程列表)的行为与“查看”相同。假设如果信息被呈现,那么您已经“查看”了线索标题,而不管您是否真的钻进了线索。

+0

+1不错的一个坎贝尔 – afarazit 2011-06-14 20:42:10

0

最简单的出路可能只是保留用户最后一次访问时间的cookie并在此之后发布/编辑查询帖子。你并没有完全读取所有的线程,但大多数论坛似乎都以这种方式工作,否则你必须将所有读取线程保存在某个地方。

+0

什么是用户删除他的cookies?更好地保留用户上次访问该网站时的数据库记录。 – afarazit 2011-06-14 20:40:58

+0

当然更好的是保存在DB中,昨晚太累了。 ;-)我试图表达的是在p.ampbells的方向上。不要记录用户访问的每个线程,而是访问等同于查看。这种方式更易于管理。 – jannej 2011-06-15 08:03:29

0

我不认为你真的需要创建任何表来记录线程标识符,因为它会增长你的用户的大小和创建的线程/帖子的数量。您可以将用户上次访问后创建的线索或帖子显示为未读。我认为那就是我要做的。