Php 查看日期是否小于24小时,然后根据

Php 查看日期是否小于24小时,然后根据,php,date,datetime,time,Php,Date,Datetime,Time,对不起,我到处都找过了,我还是抓不住 基本上,我正在制作一个预订系统,允许用户取消预订,但如果他们尝试预订的时间少于24小时,则不能取消预订 目前,这似乎拒绝了每一次删除,说虽然没有,但剩下的时间不到24小时。您正在将字符串日期与unix时间戳进行比较,请尝试更改行 $test = $info['date'] . $info['time']; $date = date("Y-m-d H:i:s", strtotime($test)); if (isset($_SESS

对不起,我到处都找过了,我还是抓不住

基本上,我正在制作一个预订系统,允许用户取消预订,但如果他们尝试预订的时间少于24小时,则不能取消预订


目前,这似乎拒绝了每一次删除,说虽然没有,但剩下的时间不到24小时。

您正在将字符串日期与unix时间戳进行比较,请尝试更改行

    $test = $info['date'] . $info['time'];

    $date = date("Y-m-d H:i:s", strtotime($test));

    if (isset($_SESSION['id']) && $_SESSION['id'] == $_GET['id'])
    {
        if (isset($_GET['BookID']) && is_numeric($_GET['BookID']))
        {
            if ($date >= (time() + 86400)) {
            // current time is 86400 (seconds in 24 hours) or less than stored time

                $sql = "DELETE FROM `tbl_booking` WHERE `BookID`={$BookID}";
                $result = mysqli_query($con, $sql);
                //header("refresh:5;url=dashboard.php");
                echo "Your booking has been cancelled.";
            }
        }
    } else {
        // if id isn't set, or isn't valid, redirect back to view page
        //header("refresh:5;url=dashboard.php");
        echo ("Sorry, there is less than 24 hours left and you cannot cancel.");
    }
将来

if ($date >= (time() + 86400)) {

我已经问过了,但我的问题已经改变了,因为我解决了这个问题。没有人再回复了。如果要将日期字符串与unix时间戳进行比较,还需要将$date转换为unix时间戳。好的,我将研究数据库中的
$info['date']
$info['time']
?如果是这样的话,在SQL查询中有一种更简单的方法可以让它按您想要的方式运行。发布您的查询以获得预订!至少在这个例子中,你没有定义$BookID。这没有给我任何东西,它完全停止了回音。
if (strtotime($date) >= (time() + 86400)) {