将mysql记录与当前时间进行比较

时间:2013-02-22 15:02:17

标签: php

我有一个查询,显示用户以年 - 月 - 日开始时间(00:00:00)结束时间(00:00:00)的格式进行的约会,现在我想比较这整个格式与当前时间相同,如果等于或高于不显示预约,因为用户可以选择取消预约,如果预约时间已经过去,我想要隐藏取消预约选项...这是我的查询和HTML回显...

$result = mysql_query("SELECT id,date,start,end FROM jos_jxtc_appbook_appointments WHERE userident='$idusera'");
while($row = mysql_fetch_assoc($result))
{
echo '<div class="record" id="record-',$row['id'],'">
    <a href="?delete=',$row['id'],'" class="delete">Delete</a>
    <strong>',$row['date'], $row['start'], $row['end'],'</strong>
  </div>';
}

2 个答案:

答案 0 :(得分:0)

除了不使用mysql_函数外,只需使用时间函数进行比较:

SELECT ... FROM ... WHERE timeColumn > CURTIME()

请参阅Date and Time Functions

答案 1 :(得分:0)

我使用了这个查询,它现在正在运行,因为我想......

 $result = mysql_query("SELECT id,date,start,end FROM jos_jxtc_appbook_appointments WHERE userident='$idusera' AND CONCAT(date,' ',start)> DATE_ADD( NOW( ) , INTERVAL 6 HOUR )");
 while($row = mysql_fetch_assoc($result))
 {

 echo '<div class="record" id="record-',$row['id'],'">
    <a href="?delete=',$row['id'],'" class="delete">Delete</a>
    <strong>',$row['date'],$space,$row['start'],$space,$row['end'],'</strong>
  </div>';

 }

这部分DATE_ADD(NOW(),INTERVAL 6 HOUR)是因为mysql中的time_zone与我的(-6)不同,因为我无法直接更改mysql中的时区(因为我没有超级权限)。