2012-11-21 42 views
0

即时通讯工作在PHP和MySQL的测验网络应用程序,我有一个用户表和测验表,管理员有权访问一个表与测验名称和一个复选框每次测验......修改mysql数据库用户输入日期和时间

可以说,那里有10个测验编号从1到10,这每一个对应于MySQL的测验,

,当你点击该复选框,除了一个小测验,然后点击发送,该特定测验可供某个用户使用(在我已选择的上一页上),但在同一页上,我想将输入字段添加时间和日期,并且该测验仅在当前时间到输入日期和时间....

user表中有一个名为is_available默认为零,每测验列,我想,值更改为1,当用户和测验的选择和当日期已过变回零..

我一直在想如何做到这一点,但我没有线索,任何想法或指导方针去哪里或如何开始这样做?我需要heeeelp!嘿嘿

回答

0

可以使用MySQLPHP,和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) 

三,创建一个php页面,将更新is_available = 0,如果日期/时间已过。

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 
+0

谢谢,让我检查所有这些信息,并开始了解CRON,因为我从来没有使用它,任何关于使用CRON的指南,你会推荐? – kastulo

0

那么,你会从一个表单开始,并指向另一个与你的数据库通信的PHP脚本。另一个PHP脚本会读取表单数据(通过$ _POST或$ _GET)并与数据库通信。然后它会输出基于此的标记,它构成输出页面。

这是一般的骨架。如果你想要具体的细节,我建议你尽可能多地实现,即使它是一个框架,然后发布它,这会让其他人更多地使用它。

+0

其实我已经有everuyhing,形式表中,所有的工作,我唯一的问题是如何实现的思考与时间输入根据输入的日期,mysql db更新用户选择的用户的测验列 – kastulo

+0

好吧,如果我理解正确,那么你只需要日期/时间函数。 MySQL和PHP都有它们,这取决于你想要进入哪个方向。下面是MySQL的方向:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html – RonaldBarzell

相关问题