PHP if语句评估为false,继续执行真正的代码。我错过了什么吗?

时间:2017-04-19 11:03:20

标签: php sql if-statement

我的php代码有问题。 我正在预订应用程序,到目前为止很好。 我是一个初学者,所以我的代码可能看起来有点笨拙,但是即使在尝试了一些事情之后我也似乎无法想出这个。

    $sql1 = "SELECT COUNT(*) as total FROM tables WHERE status_id = 1 AND chair_count = 2 AND (section_id = 3 OR section_id = 4)";
    $result = mysqli_query($conn, $sql1);
    $tableCount = mysqli_fetch_assoc($result);
    //Availability info for users
        if($tableCount > 0){
            echo "Available tables: " . $tableCount['total']. " " . "<br><br>";
            //query for displaying available tables   
            $sql2 = "SELECT * FROM tables WHERE status_id = 1 AND chair_count = 2 AND (section_id = 3 OR section_id = 4)";
            $result = mysqli_query($conn, $sql2);
            while ($row = mysqli_fetch_assoc($result)) {
                array_push($availableTables,$row['tableid']);
                $resTable1 = $availableTables[array_rand($availableTables)];
            }

上面的代码是一个确定是否有任何可用表的查询。如果是这样另一个查询是执行yada yada,那很好。

            }else{
                echo "Cant make reservation before today" . "(Inserted Date = " . $reservationDate . ") & " . "(Current Date = " . $today . ")" . "<br>";
            }

这是关闭if语句的最后一部分,然后转到不会出现的其他部分。

我缺少什么? 在此先感谢我非常感谢!!

1 个答案:

答案 0 :(得分:1)

看起来您正在检查mysqli_fetch_assoc结果是否大于零。尝试制作

if($tableCount['total'] > 0){