检查过去24小时是否有记录

时间:2015-06-18 08:07:23

标签: php mysql date

我的问题很简单:如果数据库过去24小时内有一些记录,我必须显示一个按钮。我解释一下:

我的数据库中有一个包含Datetime的表(日/月/年小时:分钟:秒,如15/01/2015 21:14:05)。如果我点击按钮,我希望每个记录都存储在名为<table>的另一个页面的Warning中。我的问题是只有在最后24小时和现在之间有记录时,按钮必须显示在第一页上。我想要这样的东西:

if (isset(records in the past 24 hours))
{
   echo "<input type=\"button\" onclick=\"location.href='../Warning/Warning.php';\" value=\"WARNING\"/>";
}

我尝试使用date("d/m/Y h:m:s", time() - 60 * 60 * 24),但我认为我没有正确使用它。 如何检查过去24小时是否有记录?

1 个答案:

答案 0 :(得分:2)

你可以像这样计算记录:

SELECT count(*) FROM records WHERE datetimefield >= DATE_SUB(NOW(),INTERVAL 1 DAY);

此处示例:http://sqlfiddle.com/#!9/c106f/1/0

在PHP中你可以做同样的事情:

$recInLast24 = array()
foreach($records as $record) {
  if(strtotime($record['datetimefield']) >= time() - 24 * 60 * 60) {
    $recInLast24[] = $record;
  }
}
if(count($recInLast24) > 0) {
  echo "<button...";
}

还有更多可行的方法。