2011-09-15 2 views
0

사람들이 사이트를 사용하여 예약 할 수있는 정보를 제공하는 회원 사이트가 많은 예약 시스템이 있습니다.PHP 복수 날짜 및 시간 예약 데이터

각 회원은 예약 가능한 날짜, 요일 및 시간을 알아야합니다. 이 정보는 예약 횟수에 따라 변경되지 않습니다.

일부 회원은 일년 내내 9am에서 6pm 사이에 예약을 허용 할 수 있습니다. 다른 사람들은 다른 시간대의 다른 시간대와 요일에 따라 다른 예약 시간과 날짜를 가질 수 있습니다.

<dateperiod> 
    <weekday> 
     <times> 
     <price> 
     <times> 
    <weekday> 
<dateperiod> 

그래서 채워 하나는 다음과 같습니다 필요한 효과적으로 무엇

이 같은 것입니다.

<dateperiod>January,February,March 
    <weekday>Mon,Tue,Wed,Thu,Fri 
     <times>6-12 
     <price>25<price> 
     <times> 
     <times>12-18 
     <price>40<price> 
     <times> 
     <weekday>Sat,Sun 
     <times>6-13 
     <price>45<price> 
     <times> 
     <times>13-17 
     <price>55<price> 
     <times> 
    <weekday> 
<dateperiod> 

이제는 XML 피드와 같이 보입니다. 제 의도는 아니지만 그것은 각 구성원에 대한 관리자 패널에서 작성해야하며 각 페이지의 예약 시스템에서 추출해야하는 일종의 데이터 구조입니다.

어떻게 이런 식으로 달성 할 수 있습니까?

아이디어가 있으십니까?

답변

0

당신이 MySQL을 사용하고 가정하면, 다음과 같은 구조를 수행해야합니다

months set('January', 'February', ..., 'December') not null
weekdays set('Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun') not null
hours_from tinyint(2) unsigned not null default 9 // 당신이 분을 필요로하는 경우,
위와하지만
hours_to tinyint(2) unsigned not null default 18 // 같은 다른 종류의 수 price decimal(3,2) not null

...이처럼 문이 될 것 무언가 :

,
... WHERE '<input month>' IN(months) 
      AND '<input day>' IN(weekdays) 
      AND '<input hours>' BETWEEN hours_from AND hours_to 
+0

하지만 나는이 문제를 해결할만큼 충분한 경험이 없습니다. –