首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用PHP构建多通知系统的最佳方法

用PHP构建多通知系统的最佳方法
EN

Stack Overflow用户
提问于 2012-05-11 09:54:58
回答 3查看 15.8K关注 0票数 17

我目前正在开发一款手机应用程序,它可以让你向朋友询问自己最喜欢的东西,它是一个HTML5前端和一个PHP后端。我被困在最好的方法是什么来构建通知系统,更多的是数据库模式而不是实际代码本身。

移动应用流程如下:

  • 用户请求用户可以选择的
  • ;通知所有朋友,通知最喜爱的朋友或通知用户选择的内容,人们会收到通知

用PHP和MySQL做这件事最好的方法是什么?我并不是要求任何人给我写PHP代码,而是绘制出最理想的MySQL表和字段模式,因为这是我目前所坚持的。提前感谢您的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-11 10:01:07

您可以创建通知表,如下所示:

代码语言:javascript
复制
from_user | to_user | notification | seen

然后,当您想要通知用户时,只需添加一条包含所需信息的记录,并将seen设置为0 / false

然后,当用户读取通知时,将该参数设置为1 / true

示例:

代码语言:javascript
复制
from_user | to_user | notification | seen
    -          -          -           -

用户john通知用户jeff:

代码语言:javascript
复制
from_user | to_user | notification | seen
   john      jeff       whatever..    0

用户jeff阅读了通知:

代码语言:javascript
复制
from_user | to_user | notification | seen
   john      jeff       whatever..    1  
票数 29
EN

Stack Overflow用户

发布于 2012-05-11 10:30:32

为什么不在一个名为" notifications“的表中列出所有通知呢?

代码语言:javascript
复制
id | user_id | from_user_id | notification

通知id=通知id for?

  • from_user_id

  • user_id=谁是通知for?

  • from_user_id=谁发送了通知?

= the message

然后作为伪代码:

代码语言:javascript
复制
// Create a notification from User A to User B
$this->db->insert ('notifications', array ('user_id' => $friends_id, 'from_user_id' => $current_user_id, 'notification' => $message));

 // The meanwhile, on your home page or somewhere, wherever you want to display notifications
 $this->db->where ('user_id', $current_user_id)
 $notifications = $this->db->get ('user_id');
 foreach ($notifications as $notification)
 {
         // Display the notification as needed
         // Optionally delete the notification as it is displayed if it is a "one off" alert only
 }
票数 5
EN

Stack Overflow用户

发布于 2013-07-03 04:25:13

扩展Jeffrey的答案:

代码语言:javascript
复制
id  |  from_user | to_user | notification | seen | timestamp
 -         -          -          -           -         -

时间戳将帮助您识别特定通知发生的时间。还可以通过使用timeago.jsLivestamp.js扩展脚本来创建time moment

它还将帮助您创建通知时间表,并且通知的维护将更加简单。

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

https://stackoverflow.com/questions/10544412

复制
相关文章

相似问题

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