我在 SO 上看到了很多关于用户通知系统的帖子(例如,用户对图片发表评论、发送消息等......)。
我很好奇如何将网站管理员生成的“系统通知”组合在一起。这些消息可能是在登录时向每个用户显示的消息,例如:
1) 系统维护/停机提醒 2) 即将发生的变更通知 3) 任何其他需要在系统范围内显示的消息
有什么好的方法可以做到这一点?我希望向所有用户显示这些消息,并且用户将有机会“隐藏”(因此将其标记为“已读”)它,这样当他们稍后登录时它就不会再次显示。这是应该在数据库端、通过 session 还是两者都完成的事情?
任何有关如何开始此操作的想法将不胜感激!
最佳答案
我将有一个由 msgID、消息、创建时间、过期时间组成的通知表。然后是一个用户表,例如 userNotifications,其中包含 userID、msgID。
当用户将消息标记为已忽略时,将消息 ID 添加到 userNotifications 中。这使您可以为所有未过期且尚未被用户取消的通知构建查询。
关于php - 针对 PHP/MySQL 用户的系统通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9842006/