定期更新和修改数据库中的数据php

时间:2011-11-17 07:01:32

标签: php mysql database cakephp

语言:php 框架:cakephp 数据库:mysql

问题: 如何每5分钟更新和修改数据库中的数据?是否有像Java计时器这样的技术,在PHP中安排。或者使用数据库触发器来实现这一点。推荐哪种解决方案?

实施例: 一个请求发送到服务器然后将请求存储在数据库中,5分钟后如果没有任何匹配结果。数据库中的请求状态字段必须标记为已过期。并同时向用户发送回复消息,表示“抱歉请求已过期”每个请求必须有自己的计时器。因此,每个传入的请求需要在5分钟后定时5分钟发送响应用户并将请求作为过期状态。

任何关键字,解决方案,提示都会很好!

Thx

3 个答案:

答案 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个脚本来确定应该更新的内容。