我有一个应用程序,我们可以进行模拟测试,当用户在数据库中启动考试时,名为testStarted
的列将设置为 1 ,当用户结束测试时列的值将设置回 0 ,我这样做是因为单个用户不应该同时进行多个测试......
现在当用户开始测试并且他不会结束它以便数据库中的值将 1 并且他不能再进行测试了...所以我需要的是测试时时间完成后该值应该设置回 0 这应该发生在服务器而不是本地机器上怎么做????
请帮助我......
答案 0 :(得分:0)
你应该看看cronjobs。 Cronjobs可以执行在特定时间或周期性地执行操作的命令。执行此操作的最佳方法是创建一个php脚本,在100分钟之后将列更改回0。 每分钟运行一次的cronjob可以验证100分钟前已启动的测试并将列设置为0.
您可以在http://www.adminschoice.com/crontab-quick-reference
找到有关cronjobs的更多信息询问您的托管公司如何为您的服务器设置cronjobs。
要运行cronjob,您可以使用
* * * * * wget -O /dev/null http://domain.com/link_to_script
或类似
* * * * * cd /var/www/html/folder && php cache_website_stats.php > /dev/null
取决于您在服务器上可用的内容