Php 下拉问题中的房间数

Php 下拉问题中的房间数,php,mysql,sql,database,Php,Mysql,Sql,Database,我想在房间类型中显示可用房间的数量。目前我可以显示所有房间。但在检查日期范围时,如何在下拉列表中隐藏预订的房间 房间类型表 预订表 从房间类型表中,我得到了no_rooms的值,然后我将其迭代为, 如果是4,则在下拉列表中显示1234 但是我怎样才能隐藏已预订的房间呢???如果一个房间是从4以上预订的,那么应该在下拉列表中显示3例如:1 2 3 我有下面的sql来检查可用性,但如何才能在下拉列表中隐藏它 SELECT * FROM bookings bk JOIN room_types rt

我想在房间类型中显示可用房间的数量。目前我可以显示所有房间。但在检查日期范围时,如何在下拉列表中隐藏预订的房间

房间类型表

预订表

从房间类型表中,我得到了no_rooms的值,然后我将其迭代为, 如果是4,则在下拉列表中显示1234

但是我怎样才能隐藏已预订的房间呢???如果一个房间是从4以上预订的,那么应该在下拉列表中显示3例如:1 2 3

我有下面的sql来检查可用性,但如何才能在下拉列表中隐藏它

SELECT * FROM bookings bk 
JOIN room_types rt ON rt.room_id = bk.room_type_id 
WHERE bk.hotel_id = '" . (int)$hotelid . "' 
AND bk.check_in 
NOT BETWEEN  '".$chkin."' 
AND '".$chkout."' 
AND bk.check_out 
NOT BETWEEN '".$chkin."' 
AND '".$chkout."' 
AND (bk.check_in >= '".$chkin."' OR bk.check_out <= '".$chkout."')
像这样的

SELECT tr.*
FROM room_types tr
WHERE tr.hotel_id = '" . (int)$hotelid . "'
AND NOT EXISTS ( SELECT 'a'
                 FROM bookings bk 
                 WHERE rt.room_id = bk.room_type_id 
                 AND '".$chkin."'  <= bk.check_out 
                 AND '".$chkout."' >= bk_check_in
               )

如何在下拉列表中隐藏已预订的房间什么下拉列表?只是一个简单的下拉列表html选择下拉列表…我使用while循环显示那里的房间数。。比如如果4个房间1到4…….1,2,3,4@Fred ii如何通过选择列表循环?循环什么?我需要更多的信息
SELECT * FROM bookings bk 
JOIN room_types rt ON rt.room_id = bk.room_type_id 
WHERE bk.hotel_id = '" . (int)$hotelid . "' 
AND bk.check_in 
NOT BETWEEN  '".$chkin."' 
AND '".$chkout."' 
AND bk.check_out 
NOT BETWEEN '".$chkin."' 
AND '".$chkout."' 
AND (bk.check_in >= '".$chkin."' OR bk.check_out <= '".$chkout."')
SELECT tr.*
FROM room_types tr
WHERE tr.hotel_id = '" . (int)$hotelid . "'
AND NOT EXISTS ( SELECT 'a'
                 FROM bookings bk 
                 WHERE rt.room_id = bk.room_type_id 
                 AND '".$chkin."'  <= bk.check_out 
                 AND '".$chkout."' >= bk_check_in
               )