您可以使用MySQL
、PHP
和CRON
首先,创建一个关系表 -
CREATE TABLE `test_expiry` (
`userid` int(2) unsigned NOT NULL, // user that is taking the test
`testid` int(2) unsigned NOT NULL, // test number
`expires` datetime NOT NULL); // date/time test will expire
//change names/types as needed / to match your db structure
其次,当设置is_available
= 1时,将该测试添加到test_expiry
表中
INSERT INTO `test_expiry` (`userid`,`testid`,`expires`) VALUES (:userid,:testid,:expires)
is_available
第三,如果日期/时间已经过去,则创建一个将更新 = 0 的 php 页面。
SELECT `userid`, `testid` FROM `test_expiry` WHERE `expires` < NOW()
foreach row above ...
UPDATE `tests` SET `is_available` = 0 WHERE `userid` = :userid AND `testid` = :testid
最后,设置一个 cron 作业-
* * * * * [/path/to/php/]php /path/to/your/script/update.php