2016-02-06 82 views
0

好吧,我对MySQL和数据库一般来说还是比较新的。我想在一段时间后对数据库进行更新。让我解释。计时甚至/ schelude?

因此,为了实践我建立一个PHP的游戏,在这个游戏中,你将能够升级的东西。说一个建筑物,从1级升级到2级需要2个小时。我怎样才能使这个事件/ scheluded数据库,以便如果用户登出它仍然会更新,即使他是脱机?这是一款多人游戏,所以即使玩家脱机,我也希望更新能够通过。

我试图谷歌和阅读,但我不能真正理解我将如何设计和编码它。我想我需要一个“事件”表,它将存储所有当前的升级,并将其中的每个升级与一个玩家的唯一ID相加。但是,如何在设定的时间间隔内更新它,以便在完成时发生所有问题事件?

如果有人愿意给我一个例子或漫游,我将非常感谢您的时间和精力。提前致谢!

+0

http://stackoverflow.com/questions/18737407/how-to-create-cron-job-using-php – linktoahref

+1

imo,我会:为活动用户记录下一次的记录被更新。然后,如已经回答的那样,'cron job'在时间到期时执行所需的处理。每隔几分钟运行一次“cron作业”以确定哪些用户需要处理。它可以并行运行,因为您可以同时运行多个作业。 –

回答

-1

我认为一个简单的方法可能是在您的web服务器上使用cron表执行php脚本。 您可以安排您的脚本每2小时运行一次,并且会更新mysql中所需的行。

1

ONe的方法是编写一个轮询数据库并更新相应行的脚本。安排脚本运行,让我们说每一分钟,并使用时间戳找出每次运行脚本时应更新哪些行。

如果您使用的是linux,请设置cron运行脚本。您也可以使用AJAX从Web浏览器调用脚本。