首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在PHP / MySQL中处理未读帖子

在PHP / MySQL中处理未读帖子
EN

Stack Overflow用户
提问于 2011-04-05 23:47:36
回答 4查看 5.3K关注 0票数 16

对于一个个人项目,我需要建立一个论坛使用PHP和MySQL。我不可能使用已经构建的论坛包(例如phpBB)。

我目前正在研究构建这样一个应用程序所需的逻辑,但这是一个漫长的一天,我正在为用户处理未读帖子的概念而苦苦挣扎。我的一个解决方案是有一个单独的表,它实际上包含所有的帖子ID和用户ID,以确定它们是否已被读取:

tbl_userReadPosts: user_id, post_id, read_timestamp

显然,如果一个用户的ID出现在这个表中,我们就知道他们已经阅读了这篇文章。这是很棒的,除非我们每天有成千上万的帖子(这在正在提议的系统中是可能的),以及成千上万的用户。这张桌子会在几天内变得很大,如果不是几个小时的话。

另一种选择是跟踪用户的最后一次活动作为时间戳,然后检索他们最后一次活动更新后发布的所有帖子。这在理论上是可行的,但是假设一个用户正在写一个非常长的帖子,同时几个成员也会开始新的线程或者回复其他线程中的帖子。当用户提交他的新帖子时,他的最后一次活动将被更新,因此与在此期间进行的活动不匹配。

有没有人有这方面的经验,你是怎么解决的?

我签入了phpBB,似乎系统为每个用户分配了一个自定义会话,并在此基础上工作,但文档中关于如何处理未读帖子的文档相当稀少。

像往常一样,感激地接受了我的想法和意见。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5554637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档