PHP和MYSQL我的查询有问题!

时间:2011-06-23 16:47:13

标签: php mysql

我遇到以下问题的一些问题,问题是我需要它,所以它显示当天的课程,直到当天结束,而不是像当前那样直到当天的开始。基本上用户无法访问课程,如果他们试图访问其结束日期,所以我需要一些如何使他们仍然可以访问它23小时59分钟和结束日期后59秒我认为我必须添加NOW()有一些时间来完成这个但我不知道如何去做。查询如下:

if ($courses = $db->qarray("

SELECT `CourseCode` AS 'code' FROM `WorkshopUserSessions`
LEFT JOIN `WorkshopSession` ON (`WorkshopUserSessions`.`sessionid` = `WorkshopSession`.`id`)
LEFT JOIN `WorkshopCourses` ON (`WorkshopSession`.`cid` = `WorkshopCourses`.`cid`)
WHERE `WorkshopUserSessions`.`userid` = {$info['uid']} AND `WorkshopUserSessions`.`begindate` <= NOW() AND `WorkshopUserSessions`.`enddate` >= NOW()
ORDER BY `WorkshopUserSessions`.`begindate` ASC

")) {

任何帮助都会受到极大的欢迎!

谢谢, 凸轮

3 个答案:

答案 0 :(得分:2)

我认为你需要像这样修改它

enddate + INTERVAL 1 DAY >= NOW()

当然这增加了24小时,对于23:59:59只需更改&gt; =到&gt;

答案 1 :(得分:1)

尝试更换:

AND `WorkshopUserSessions`.`enddate` >= NOW()

AND DATE(`WorkshopUserSessions`.`enddate`) = CURDATE()

希望它有所帮助。

答案 2 :(得分:1)

听起来你只需要使用date_add

DATE_ADD(`WorkshopUserSessions`.`enddate`, INTERVAL 1 DAY) > NOW()