2017-08-10 60 views
-2

我想創建一個租用汽車腳本。我在每張表格中添加了一個新的數據。例如,如果我有同樣的6輛汽車,汽車表有6個數據。 預訂像汽車一樣添加,每天添加在預訂表中。 但我無法搜索免費汽車。 搜索預約(MYSQL + PHP)

<form action="x.php" method="post"> 
 
    <label>baslangic</label><input type="text" name="start"> 
 
    <label>bitis</label><input type="text" name="end"> 
 

 
    <button type="submit">Search</button> 
 
</form> 
 

 
<?php 
 
include('admin/db/login.php'); 
 
$startTime = strtotime($_POST['start']); 
 
$endTime = strtotime($_POST['end']); 
 
for ($i = $startTime; $i <= $endTime; $i = $i + 86400) { 
 
$day = date('d.m.Y', $i); 
 
$dates=mysql_query("SELECT * from cars where car_active='1' and not car_id in (SELECT car_id From cars JOIN reservations on cars.car_id=reservations.car_id2 where reservations.reservations_day='$day')"); 
 
while ($date=mysql_fetch_assoc($dates)){ 
 
echo $date['car_id']; 
 
echo "<br>";}} 
 
?>

回答

0

糾正你的查詢

car_id NOT IN (SELECT ....) 

,並使用庫MySQLi或PDO的連接,因爲MySQL擴展已經過時,並將在將來被移除。

+0

它看起來正確的,但它是行不通的。當我搜索時,這個查詢會帶來一切或什麼都沒有。你可以檢查我的MySQL和PHP代碼嗎? –

+0

它不工作,因爲如果我寫3天,它每次抓取car_id三件。我使用截然不同的工作,因爲循環與for一起工作。 –

0

我用這個解決了這個問題;

$startTime = ($_POST['start']); 
 
$endTime = ($_POST['end']); 
 

 

 

 
$dates=mysql_query("SELECT * from cars where car_id not in (SELECT car_id2 From reservations where reservation_day BETWEEN '$startTime' AND '$endTime') "); 
 
while ($date=mysql_fetch_assoc($dates)){ 
 
    echo $date['car_id']; 
 
    echo "<br>"; 
 
}