首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php限制活动数据库条目

问php限制活动数据库条目
EN

Stack Overflow用户
提问于 2014-01-31 10:43:41
回答 2查看 143关注 0票数 0

我目前正在制作几个php脚本,允许客人在酒店预订房间,现在对不同类型的房间有限制,但我如何通过php强制执行呢?

我现在有这些房间,有多少可以预订。

2人分开床位限制: 11人

2人双人床限制: 11人

套房限制:1

蜜月套房限制:1

在mysql中,我设置了两个表,它们之间有一个关系:

预订

空位预订

from_date

to_date评论

机房

2页床

2双人床

套间

honeymoon_suite

bookings_idbookings (关系)

如何在允许所有信息留在这些表中的情况下强制执行此限制?我想到了一个额外的列,检查预订是否有效。或者,如果有更简单的选择,如果能指出这一点,我们将不胜感激。会不会有一种方法,使当T_date已经达到或超过,房间将被设置为非活动?

EN

回答 2

Stack Overflow用户

发布于 2014-01-31 12:25:26

极限只是可变的或恒定的。要在PHP中实现这一点,请声明一个全局变量并将其值设置为极限

代码语言:javascript
复制
<?php

TWO_BED_LIMIT = 11
DOUBLE_BED_LIMIT = 11
…

?>

一个更好的方法是将这些值与房间类型一起存储在数据库本身中。然后,您可以读取这些值并将它们存储在变量中,然后对该变量执行逻辑操作。

票数 0
EN

Stack Overflow用户

发布于 2014-01-31 12:26:31

在SQL中签入约束是不可能的,除非您将一个人住在酒店的整个晚上都存储在桌子上。

所以说:

客房:

room_id

room_type

room_cost

预订:

booking_id

customer_id

booking_nights:

booking_id

night_date

room_id

这是一种关系,您可以在这里查询所需的一切。晚上的数目,价格,有多少房间(和哪些房间)预定了某个晚上,等等。还可以通过在表booking_nights上设置三列主键来防止双重预订。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21478045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档