php - 检查可用房间的参数为房间类型、开始日期和结束日期

标签 php mysql

我有这张 table

**Rooms** 
idRoom
name

**Room_details**
idRoomDetails
idRoom
idRoomType

**Bookings**
idBooking
idRoomDetails
startDate
endDate

带有 * * 的单词是表格名称

我拥有的变量是 idRoomType 、 startDate 、 endDate 。

如何输出所有可用的房间,并且给定的参数为房间类型、startDateendDate

老实说,我现在不知道如何开始,这就是为什么我无法向您展示我到目前为止所做的事情。

我们将非常感谢您的帮助!谢谢! :)

最佳答案

如果日期选择是您的问题,那么我可以为您提供一些有用的见解。您应该在查询结构中选择具有以下条件的所有房间;

Booking.startDate  <= "End date of the availability period you're checking"
Booking.endDate    >= "Start date of the availability period you're checking"

为了更清楚地说明,您的查询可能如下所示:

SELECT * FROM Rooms
INNER JOIN Room_details ON Rooms.idRoom = Room_details.idRoom
LEFT JOIN Bookings ON Room_details.idRoomDetails = Bookings.idRoomDetails 
WHERE Bookings.idBooking IS NULL
OR (Bookings.startDate <= 'availabilityEndDate'
AND Bookings.endDate >= 'availabilityStartDate')

其中“availabilityEndDate”和“availabilityStartDate”当然需要替换为实际日期。

关于php - 检查可用房间的参数为房间类型、开始日期和结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17927182/

相关文章:

mysql - MySQL中的字符和数字分割

javascript - 使用 jquery 忽略链接、复选框……在可编辑的 html 字段中

php - WordPress 主题功能在调用时不起作用

PHP:将数组的每个元素附加到字符串/查询

php - PHP安全性问题-SQL注入(inject),过滤和 session 安全性

php - while循环有问题吗?

python - Influxdb-python : error inserting utf8 data

php - 如何使用 UPDATE 表 SET column = NULL 释放未使用的空间?

MySQL 连接表返回多行作为一个结果,SUM() 是否已解决?

PHP MySQL 注入(inject)安全 : Does verifying that $_GET input is numeric provide enough protection?