【发布时间】:2008-11-25 02:42:24
【问题描述】:
我有一个查询,它选择表“酒店”中的所有适当记录,然后为每个酒店在表“已预订房间”中查找特定类型的预订房间以及特定时期的所有这些。 所以首先我从“hotel_table”中取出所有hotel_id,根据搜索表单提供的位置,对于每个hotel_id,我都会遍历“booked_rooms”表。
代码如下:
if(isset($_GET['book'])){
$sql=mysql_query("SELECT hotel_id FROM 'hotels' WHERE city='$city") or die(mysql_error());
while($row=mysql_fetch_array($sql)){
$sql_2=mysql_query("SELECT * FROM `booked_rooms` WHERE hotel_id='$hotel_id'
AND arrival_date BETWEEN '$arrival_date' AND '$departure_date'
OR departure_date BETWEEN '$arrival_date' AND '$departure_date'")
or die(mysql_error());
}
while($row_2=mysql_fetch_array($sql_2)){
print_r($row_2);
}
}
// $city, $arrival_date and $departure date are values retrieved from the search form
问题是我通过'hotel'表循环并获取所有适合该位置的hotel_id,但打印$row_2数组却一无所获。 我尝试在 SQL 'foreach' 循环中使用 JOINS,但也没有运气。
【问题讨论】: