Hallo!
Ich habe eine MySQL Datenbank mit unter anderem folgenden Tabellen:
- Buchungen (ID, IDUser, Datum, Von, Bis)
- ZeitenVon (ID, Zeit) > 08:00, 09:00, ... 21:00
- ZeitenBis (ID, Zeit) > 09:00, 10:00, ... 22:00
Nun werden die Dropdown-Felder (von, bis) mit den Werten aus der Tabelle Zeiten gefüllt.
Der User kann nun mittels einen Kalender den gewünschten Tag auswählen und kommt nun zu der Seite, wo er die Zeiten auswählen kann.
Wenn nun bereits eine Reservierung (zB von einem anderen User) vorhanden ist, dann sollen diese bereits reservierten Zeiten nicht mehr zur Verfügung stehen.
Ich habe habe es bereits mit folgendem Code versucht:
Beispiel: Reservierung am 20.09.2012 von 10:00 bis 12:00 bereits vorhanden.
User wählt jetzt auch den 20.09.2012.
Nun sollten im Dropdown-Feld "Von" nur noch die Zeiten 08:00, 08:30, 09:00 und 09:30 sowie 12:00 bis 22:00 vorhanden sein.
Und im Dropdown-Feld "Bis" nur noch die Zeiten 09:00, 09:30, 10:00 und dann alle Zeiten ab 12:00 wieder.
Dies ist jedoch nicht der Fall, da durch das NOT BETWEEN ja auch die Zeiten 10:00 und 12:00 ausgeschlossen werden.
Es sollte jedoch möglich sein, auch noch von 08:00 bis 10:00 Uhr zu buchen und wieder ab 12:00 und nicht erst ab 12:30.
Wenn dann eine zweite Reservierung vorhanden ist, sind plötzlich in den Dropdown-Felder manche Zeiten doppelt vorhanden.
Kann mir jemand bei diesem Problem helfen?
Danke, LG
Ich habe eine MySQL Datenbank mit unter anderem folgenden Tabellen:
- Buchungen (ID, IDUser, Datum, Von, Bis)
- ZeitenVon (ID, Zeit) > 08:00, 09:00, ... 21:00
- ZeitenBis (ID, Zeit) > 09:00, 10:00, ... 22:00
Nun werden die Dropdown-Felder (von, bis) mit den Werten aus der Tabelle Zeiten gefüllt.
Der User kann nun mittels einen Kalender den gewünschten Tag auswählen und kommt nun zu der Seite, wo er die Zeiten auswählen kann.
Wenn nun bereits eine Reservierung (zB von einem anderen User) vorhanden ist, dann sollen diese bereits reservierten Zeiten nicht mehr zur Verfügung stehen.
Ich habe habe es bereits mit folgendem Code versucht:
PHP:
$ergebnis = mysql_query("SELECT z.ID, z.Zeit, b.Datum, b.Von, b.Bis FROM ZeitenVon z, Buchungen b WHERE b.Datum = '$date' AND z.Zeit NOT BETWEEN b.Von And b.Bis ORDER BY z.Zeit ASC");
Beispiel: Reservierung am 20.09.2012 von 10:00 bis 12:00 bereits vorhanden.
User wählt jetzt auch den 20.09.2012.
Nun sollten im Dropdown-Feld "Von" nur noch die Zeiten 08:00, 08:30, 09:00 und 09:30 sowie 12:00 bis 22:00 vorhanden sein.
Und im Dropdown-Feld "Bis" nur noch die Zeiten 09:00, 09:30, 10:00 und dann alle Zeiten ab 12:00 wieder.
Dies ist jedoch nicht der Fall, da durch das NOT BETWEEN ja auch die Zeiten 10:00 und 12:00 ausgeschlossen werden.
Es sollte jedoch möglich sein, auch noch von 08:00 bis 10:00 Uhr zu buchen und wieder ab 12:00 und nicht erst ab 12:30.
Wenn dann eine zweite Reservierung vorhanden ist, sind plötzlich in den Dropdown-Felder manche Zeiten doppelt vorhanden.
Kann mir jemand bei diesem Problem helfen?
Danke, LG