日期比较:根据日期和时间重定向到页面。这不起作用

时间:2016-09-17 02:59:25

标签: php

我获得了以下日期:

$startdate = '09/16/2016 07:00:00 AM';
$enddate = '10/14/2016 11:59:59 PM';

我被告知,如果当前日期在这些日期之间,用户将被重定向到名为vote.php的页面,在那里他们可以登录系统并投票。

但是,如果当前日期不在这些日期之内,请将用户重定向到名为done.php的页面,该页面告诉他们投票已结束。

我一直在尝试以下代码:

$now = date("m/d/Y h:i:s A");
echo $now;
$startdate = '09/16/2016 07:00:00 AM';
$enddate = '10/14/2016 11:59:59 PM';

if ($now < strtotime($startdate) && $now > strtotime($enddate)) {
    header('location:done.php');
    exit;
        header('location:vote.php');
}

但我一直在重定向到用户应该继续投票的页面。

我做错了什么?

提前感谢您的协助

2 个答案:

答案 0 :(得分:0)

strtotime()返回一个时间戳(自the epoch以来的整数秒数),您将其与格式化的日期字符串(由date()返回)进行比较。苹果和橘子。

改为使用:

if( time() > strtotime(...

...将一个时间戳(由time()返回)与另一个时间戳(由strtotime()返回)进行比较。

答案 1 :(得分:0)

首先,我可以看到代码错误

zipline

永远不会在该行之前调用coz exit。

我解决这个问题的方法是,使用三个时间戳代替日期。让我们拥有这些变量,

deactivate

如果这对您有用,请告诉我