我有一个 php/codeigniter 应用程序函数来实现以下场景:
- 有两个用户区:管理员区和会员区
- 用户下订单
- 只有“登录”的管理员用户必须在提交时检测到已下订单。(记住管理员没有互动)
我想到了一个每隔几分钟检查一次的 cron 作业,但必须有另一种方法——也许有人可以在这里提供帮助——谢谢。
我有一个 php/codeigniter 应用程序函数来实现以下场景:
我想到了一个每隔几分钟检查一次的 cron 作业,但必须有另一种方法——也许有人可以在这里提供帮助——谢谢。
如果您的用户以管理员身份登录,我将通过触发对 CI 控制器操作的 AJAX 调用来实现上述操作,该操作获取在最后 X 分钟内创建的所有订单。我会使其可扩展 - 所以基本上,您发送一个lowerThreshold和一个upperThreshold时间戳,它允许您检索特定时间戳中的订单。模型函数的一个示例是:
public function retrieveBetweenThreshold($lowerThreshold, $upperThreshold) {
$this->db->where('created_at > ', $lowerThreshold)
$this->db->where('created_at < ', $upperThreshold)
return $this->db->get('order')->result_array();
}
作为一个附加因素,我会以这种方式实现您的想法 - 尝试在管理员注销(非常简单)或关闭窗口时存储管理员的签核日期(jQuery unload() 方法:http:// api.jquery.com/unload/)。
当管理员登录时,使用当前时间戳和管理员的签核日期触发一个 AJAX 请求,以便您检索在签核时已创建的条目数,然后每隔一段时间继续进行常规 AJAX 调用X 分钟。
更新:对于您似乎想要的Ajax Push的概念,请查看: http ://ape-project.org/