【问题标题】:check if user got new message in the background?检查用户是否在后台收到新消息?
【发布时间】:2010-01-15 05:19:49
【问题描述】:

我使用 Comet 向用户推送新数据。

1:但我想知道我应该如何检查新数据(新消息、新回复等)是否可用?

我是否应该在后台的 php 中使用 while 循环并使其休眠 1 分钟,以便每隔一分钟检查一次是否有新数据进入?

或者我应该在数据库中为此设置一个触发器?

有哪些可用选项?

2:我如何实际检查例如。如果用户收到一条带有 SQL 的新消息?我应该如何设置“系统”?

【问题讨论】:

  • 我会通知收件人发送消息的一部分。或者,如有必要,通知任务将在发送消息期间排队。

标签: php mysql ajax


【解决方案1】:

1) 我会使用 AJAX 从打开的用户页面请求新消息。这样您就不需要在后台运行脚本,只有活跃的用户/页面需要结果,所以让他们自己要求吧。

2) 如果您将最后一条消息的日期与 AJAX 请求一起发送。检查数据库是否包含带有SELECT * FROM messages WHERE date > $last_message_date之类的新消息是相当容易的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多