语言:php 框架:cakephp 数据库:mysql
问题: 如何每5分钟更新和修改数据库中的数据?是否有像Java计时器这样的技术,在PHP中安排。或者使用数据库触发器来实现这一点。推荐哪种解决方案?
实施例: 一个请求发送到服务器然后将请求存储在数据库中,5分钟后如果没有任何匹配结果。数据库中的请求状态字段必须标记为已过期。并同时向用户发送回复消息,表示“抱歉请求已过期”每个请求必须有自己的计时器。因此,每个传入的请求需要在5分钟后定时5分钟发送响应用户并将请求作为过期状态。
任何关键字,解决方案,提示都会很好!
Thx
答案 0 :(得分:2)
阅读本教程关于cron job
答案 1 :(得分:0)
你也可以使用MYSQL事件调度程序(为你的工作更新你的请求)
请参阅:http://dev.mysql.com/doc/refman/5.1/en/events.html
创建作业的语法很简单
CREATE EVENT myevent
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 30 SECONDS
DO
call your_update_routine;
另一部分是您需要在5分钟后刷新网页,我会使用javascript进行此操作..
请参阅:http://www.javascriptkit.com/script/script2/autofresh.shtml
示例是持续刷新,您需要将其更改为仅刷新一次(例如,如果从数据库返回的日期不到5分钟)
然后,在刷新页面时,您只需要检查请求的状态。
答案 2 :(得分:0)
如前所述,您可以结合CakePHP控制台脚本创建cronjobs。看着 : The CakePHP Console有关可用的不同脚本的更多信息。
然后,您可以设置所有cronjobs来调用不同的Cakephp脚本,或者运行1个脚本来确定应该更新的内容。