将当前日期与数据库中的日期进行比较

我的问题是这两个日期不会比较或至少不好。


我尝试了比较两个日期的大部分答案。但没有一个是成功的。


我有权知道:


else if ($_SESSION['org_id'] != "0" && $_SESSION['part_id'] == 0) {

    require '../conn.php';

    $sql = "SELECT `end_date` FROM `partner_subscriptions` WHERE `user_id` = '" . $dUsrId . "'";

    $result1 = mysqli_query($conn, $sql );

    $row = mysqli_fetch_array($result1);

    if (date('Y-m-d') >= $row['end_date']) {

        header('Location: ../../index');

    } else {

        header('Location: ../../partnersubscription');

    }

我尝试过的一件事


else if ($_SESSION['org_id'] != "0" && $_SESSION['part_id'] == 0) {

    require '../conn.php';

   // header('Location: ../../partnersubscription');

    $sql = "SELECT `end_date` FROM `partner_subscriptions` WHERE `user_id` = '" . $dUsrId . "'";

    $result1 = mysqli_query($conn, $sql);

    $row = mysqli_fetch_array($result1);

    $today = date("Y-m-d");

    $expire = $row['end_date']; //from database

    $today_time = strtotime($today);

    $expire_time = strtotime($expire);

    if ($expire_time > $today_time) {

        header('Location: ../../index');

    } else {

        header('Location: ../../partnersubscription');

    }

我希望当今天的日期小于行的日期时,它将进入索引,否则将进入合作伙伴订阅。


我的行end_date看起来像这样“2019-06-06”并且是DATE


千万里不及你
浏览 226回答 2
2回答

偶然的你

为什么不使用 mysql 来检查这种情况:"SELECT  EXISTS( "SELECT 1 FROM `partner_subscriptions` WHERE `user_id` = '" . $dUsrId . "' AND end_date > NOW() "  ) ;如果未过期,您将获得 1,如果过期 ps 您可能需要使用 >= 而不仅仅是 > (包括或不包括今天)

阿波罗的战车

我会做这样的查询:SELECT * FROM `partner_subscriptions` WHERE `end_date`>=now()  AND `user_id`=$dUsrId;然后检查行数,如果它是 1 那么它没有过期如果它是 0 那么它已经过期。
打开App,查看更多内容
随时随地看视频慕课网APP