我的网站要求用户每天23:59:59之前在网站上完成某项任务(不用担心时区或任务)
该任务有$today_status
(complete
或incomplete
)
我有一个在一天开始时(00:00:01)运行的 cron 来做两件事:
- 检查昨天是否完成了所有任务(检查所有仍未完成的任务)。
- 将所有昨天的任务重置为未完成,以便用户今天可以再次开始任务(新的一天)。
每个任务旁边都有一个倒计时计时器,以便用户可以看到以下两个计时器之一:
- (
IF $today_status = incomplete
) - 他们完成任务所剩的时间(倒计时到一天结束)。 - (
IF $today_status = complete
) - 他们在完成第二个任务之前必须等待的时间(倒计时到一天结束)。
我有两个相关的小问题:
cron 在 00:00:01 进入新的一天后立即运行,但是 cron 可能要到 00:07:19 才能完成所有任务的处理,因此存在 7 分钟的错误间隔......这可能会增加更多用户加入。
因此,如果用户已完成前一天的任务,然后在第二天 00:03:27 查看任务......$today_status
仍然可能是completed
因为 cron 可能还没有处理前一天的任务......计时器会说
23:54:33(开始下一个任务还剩等待时间)
它会说上面的,因为它仍然处于“完成”状态......但是用户只是提前登录,所以他们可以提前完成今天的任务但是网站告诉他们否则......它告诉他们他们必须等到明天完成下一个任务……
我希望我能正确解释这一点,如果您费心阅读本文,我将非常感谢您...任何帮助将不胜感激...在此先感谢