2015-08-08 96 views
-1

我正在一個窗體上,其中需要我檢查是否有一個或多個特定值/值的實例。問題是,在測試中,我得到「日期已經預訂」,即使我選擇的值不是。PHP條件SQL計數語句

這是我的代碼 -

else if ($validdate == false) { 
     $final = true; 
     include 'connect.php'; 
     $sql = "SELECT COUNT(*) FROM room_nights WHERE apartmentID= $apartment AND dates >= '$booking_from' AND dates < '$booking_to'"; 
     $result = mysqli_query($conn, $sql); 
     $data = mysqli_num_rows($result); 
     $row=mysqli_fetch_row($result); 
     echo $row[0]; 

     if ($row != 0) { 
      echo "Dates are already booked!"; 
     } 
     else { 
      echo "Proceed"; 
     } 

     } 

    } 
} 
+0

我已經試過了解決方案,它並沒有爲我工作了。 – Christa

回答

0

試試這個,

$row=mysqli_fetch_row($result); 

echo $row[0]; 
0

您的選擇查詢,讓你從伯爵錶行。這意味着,這個查詢的結果是簡單的數字(在你的情況4)。如果將該查詢的結果放入mysqli_num_rows函數中,它將返回1,因爲只有一行(值爲4)。您需要將您的查詢更改爲SELECT * FROM room_nights選擇所有行,如果你想通過mysqli_num_rows指望他們或代替mysqli_num_rows使用

$data = mysqli_fetch_object($result); 
echo $data->booked;