是否可以在没有客户端请求的情况下以定时间隔更新mysql

时间:2014-01-11 23:15:57

标签: php ajax

我正致力于用户可以互相发送挑战的游戏。这些挑战有时间间隔,比如几小时,几天等。 当用户登录时,可以通过mysql检索设置,然后使用java脚本显示倒计时时钟以显示和倒计时剩余时间。如果时间用完,可以更新数据库以显示此信息。如果用户已登录,则此工作正常,但如果没有人登录时设置结束,该怎么办? 那么有没有一种方法可以在服务器上不断运行某些内容来检查这些倒计时,如果时间已经用完就更改数据库,或者当用户查看挑战时检查计时器,然后采取相应的行动。

澄清:

选项1.在服务器上运行的自动脚本,用于检查每个挑战的时间。通过让计算机在使用间隔计时器运行ajajar请求时不断记录。 (最好没有电脑和ajax)

选项2:当用户查看挑战时,计算出时间。如果时间已结束,请在数据库中更新此内容,以便现在将挑战显示为已结束。

如果选项1可行则更好,这将如何工作?

2 个答案:

答案 0 :(得分:2)

是的,你可以。使用日期。转到date_createddate_expired。如果当前时间超过了过期时间等,等等。

答案 1 :(得分:0)

你想删除过期的挑战吗?或设置一个标志,以便用户知道它们存在但已过期?

根据您的SQL版本,查看“事件”。它类似于CRON作业,但是在SQL服务器上运行。如果可以的话,我会说这是一个不错的选择。