0

我必须使用 php 实现售票服务,用户输入他/她想要的座位数,系统检查可用性,然后随机显示座位,用户确认并完成预订。

我要做的第一件事是总结我将使用的数据库模式。我有点困惑,所以我将向您介绍我到目前为止的想法。为了继续实施,我真的需要您的建议。

我总结了以下表格:

  • Customerid, name
  • Ticketticket_id, time, price, seat_id
  • Bookingid, customer_id, ticket_id
  • Seatid, status

他的重点是我不确定这一点,并且很确定它是错误的。例如,剧院有容量(标准座位数)。那么,我应该在哪里存储这个?我应该有一个表Theater: id, name, capacity,并且当管理员完成例如capacity = 60,然后我应该自动进行一个查询,将 60 条记录插入到Seats表中status=1(可用)?

我很困惑。我将不得不更仔细地考虑它,但是第二种意见对我真的很有帮助。

4

1 回答 1

0

您认为您当前的模式不正确是正确的。您现在预订的方式只能有一个座位,但您的要求是您需要能够选择多个。你需要的是多对多的关系。要求谷歌找出这意味着什么。

这是我认为应该起作用的:

  • 客户:身份证、姓名
  • 门票:ticket_id,时间
  • 预订:id、customer_id、ticket_id
  • 座位:id、状态、价格
  • seat_ticket_map:seat_id,ticket_id

因此,要将新座位附加到票上,您需要创建一个新的 seat_to_ticket_map 实例。

我不确定在哪里定价,但我认为在 Seat 上是有道理的。但这取决于您的要求

于 2012-10-24T14:40:44.460 回答