Hallo,
ich habe einmal hier eine theoretische Problemstellung wofür ich einen neuen/besseren
Lösungsansatz suche - daher möchte ich um eure Mithilfe / Ideen bitten.
Auftrag (abgeschlossen) war, ein Buchungssystem zu entwickeln, das eine automatische
Belegung/Buchung inkl. visueller Darstellung (Ganzjahreskalender) der belegten Zeiten
für frei definierbare Objekte (in dem Fall Ferienwohnungen) ermöglicht.
Ferner sollte bei einer Buchungsanfrage direkt gegengefragt werden, ob für
diesen gewünschten Zeitrahmen bereits eine Belegung vorliegt. Wichtig ist hierbei zu erwähnen,
das eine Buchung z.B. für den Zeitraum 13.04 - 15.04 automatisch auch eine
Buchung für z.B. 10.04 - 13.04 zulassen muß, da hierbei der 13.04 als An-/Abreisetag
gewertet werden muß.
Ich habe dieses Projekt mit PHP 4.x sowie MySQL realisiert, indem ich das jeweilige
Start-/Enddatum als Timestamp speichere.
Bei einer Buchungsanfrage teste ich nun ob, der eingegebene Zeitraum innerhalb
der zwei Timestamps liegt. Diese Abfrage habe ich über BETWEEN gelöst.
Hinsichtlich des Ganzjahreskalenders viel mir leider auf die Schnelle nicht eine
bessere Lösung ein, als bei dem erstmaligem Aufruf die 365 Tage einzeln gegenzuprüfen
um somit eine statische HTML-Seite zu generieren.
Leider erzeugt dieser Vorgang pro Aufruf oder bei Änderung immer wieder über 400
MySQL-Abfragen, was bei aller Liebe sicher nicht sehr sinnvoll ist.
Meine Frage (nach dieser langen, langen, langen) Erklährung:
Wie würdet Ihr dieses Problem (Einzelüberprüfung wie auch Ganzjahreskalender im Hinblick auf bessere Performence) lösen ?
War mein Denkansatz mit den zweit Timestamps falsch ?
Gruss
Mofu
ich habe einmal hier eine theoretische Problemstellung wofür ich einen neuen/besseren
Lösungsansatz suche - daher möchte ich um eure Mithilfe / Ideen bitten.
Auftrag (abgeschlossen) war, ein Buchungssystem zu entwickeln, das eine automatische
Belegung/Buchung inkl. visueller Darstellung (Ganzjahreskalender) der belegten Zeiten
für frei definierbare Objekte (in dem Fall Ferienwohnungen) ermöglicht.
Ferner sollte bei einer Buchungsanfrage direkt gegengefragt werden, ob für
diesen gewünschten Zeitrahmen bereits eine Belegung vorliegt. Wichtig ist hierbei zu erwähnen,
das eine Buchung z.B. für den Zeitraum 13.04 - 15.04 automatisch auch eine
Buchung für z.B. 10.04 - 13.04 zulassen muß, da hierbei der 13.04 als An-/Abreisetag
gewertet werden muß.
Ich habe dieses Projekt mit PHP 4.x sowie MySQL realisiert, indem ich das jeweilige
Start-/Enddatum als Timestamp speichere.
Bei einer Buchungsanfrage teste ich nun ob, der eingegebene Zeitraum innerhalb
der zwei Timestamps liegt. Diese Abfrage habe ich über BETWEEN gelöst.
Hinsichtlich des Ganzjahreskalenders viel mir leider auf die Schnelle nicht eine
bessere Lösung ein, als bei dem erstmaligem Aufruf die 365 Tage einzeln gegenzuprüfen
um somit eine statische HTML-Seite zu generieren.
Leider erzeugt dieser Vorgang pro Aufruf oder bei Änderung immer wieder über 400
MySQL-Abfragen, was bei aller Liebe sicher nicht sehr sinnvoll ist.
Meine Frage (nach dieser langen, langen, langen) Erklährung:
Wie würdet Ihr dieses Problem (Einzelüberprüfung wie auch Ganzjahreskalender im Hinblick auf bessere Performence) lösen ?
War mein Denkansatz mit den zweit Timestamps falsch ?
Gruss
Mofu