MySQL AJAX PHP通知表布局

MySQL AJAX PHP通知表布局,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我在完成我的网站上的通知系统时遇到了问题,在我的网站上,当发布帖子或评论时,会通知用户。到目前为止,我有3个表:用户、帖子和通知。例如,当用户将内容提交到posts表时,将在notifications表中生成通知,包括时间戳、帖子的位置以及发布者。我的问题不是对这些进行编码,而是如何设置我的表,以便当我通过AJAX调用查询时,用户获得一个数字,表示他们没有看到的帖子/评论的数量。如何在表中表示会话用户未看到通知?很明显,不同的用户看到和看不到的帖子会有所不同,我似乎不能对此束手无策。我尝试了以下

我在完成我的网站上的通知系统时遇到了问题,在我的网站上,当发布帖子或评论时,会通知用户。到目前为止,我有3个表:用户、帖子和通知。例如,当用户将内容提交到posts表时,将在
notifications
表中生成通知,包括时间戳、帖子的位置以及发布者。我的问题不是对这些进行编码,而是如何设置我的表,以便当我通过AJAX调用查询时,用户获得一个数字,表示他们没有看到的帖子/评论的数量。如何在表中表示会话用户未看到通知?很明显,不同的用户看到和看不到的帖子会有所不同,我似乎不能对此束手无策。我尝试了以下方法:

  • 比较用户上次活动和通知活动的时间戳。用户只需转到任何其他页面,而不是通知的位置,通知就会立即消失
  • 通知的位置与最新的页面用户是;每次用户访问带有最近活动的页面时,通知都会消失,但在用户离开后,通知会再次出现

那么,如何模拟用户及其通知的“已读/未读”状态呢?谢谢大家。

通过您的设置,我将创建另一个表
users\u notifications
或其他什么,其中包含
id、user\u id、notification\u id、status、,时间戳
其中
用户id
通知id
分别是其表的唯一id,
状态
是标识具有该特定通知的用户当前状态的id或枚举。这将使您能够轻松计算您现在需要的内容,但如果需要,还可以增加更多内容。

您为什么要投否决票?即使你这样做了,请解释为什么至少…它是指一个成功的查询mysql数据库大纲。有人仍然可以帮助吗?这似乎与我非常相关。一个单独的表存储用户是否查看过x通知应该可以工作。如前所述,如果您仅将其存储在会话中,则一旦用户获得新会话,它们将突然变为未读(或已读,具体取决于写入的时间),而不管用户是否已实际读取通知x。@stmyd如果通知是针对每个用户发出的,则不会。(见第九行答案中的user_id栏)很高兴这有帮助。。。不过我还不能投票,我现在只有11岁:)所以每次生成通知时,都会为每个
用户id
生成一个通知,该id可以从未读更改为已读?我会让系统假设用户没有读过通知,除非
用户通知
表中有条目。。。因此,当用户读取通知时,它将使用当前时间等写入
users\u notifications
表。然后,当您计算他们尚未读取的通知数量时,您可以查询当前用户的
users\u notifications
表中不存在的所有通知。抱歉,重读你的评论。不需要,您只需要
通知
表中的一个通知。
users\u notifications
表可以跟踪哪些用户“读取”了哪些通知。