Mysql
 sql >> Datenbank >  >> RDS >> Mysql

online-hotelzimmerbuchungskonzept in php

Sie benötigen einen weiteren Tisch mit Buchungen

  ID      roomId        checkInDate          checkOutDate
  1       1             4/6/2011 12:00PM     4/9/2011 11:00AM
  2       2             4/2/2011 12:00PM     4/3/2011 11:00AM
  3       1             4/9/2011 12:00PM     4/11/2011 11:00AM

Wenn Sie dann für jedes Zimmer eine neue Buchung hinzufügen, müssen Sie sicherstellen, dass die folgende Abfrage zu einer zero 0 führt , oder das Zimmer ist bereits gebucht.

//Count Scheduling Conflicts
select count(roomid) from bookings where 
    bookings.checkOutDate > YouNewBookingCheckInDate and
    bookings.checkInDate < YouNewBookingCheckOutDate

Also, wenn Ihre neue Buchungsanfrage für Zimmer 1 am 4/5/2011 1:00PM ist , Datensatz Nr. 1 wird gezählt und die Abfrage ergibt eine 1 (was auf einen Konflikt hinweist)