Mailinglisten-Archive |
hans-joachim schrieb:
> Reservierungssystem soll es mal werden, dazu habe ich eine Frage.
> Es gibt eine Tabelle mit Zimmern und die haben 2. date Felder
> gebucht.beginn und gebucht.ende
>
> Jetzt erhalte ich per Form einen gewünschten Reservierungszeitraum:
>
> Danach will ich checken welche Zimmer frei sind
>
> Select * from GEBUCHT
> where reservierungsbeginn nicht im Zeitraum gebucht.beginn bis gebucht.ende
> reservierungsende nicht im Zeitraum gebucht.beginn bis gebucht.ende
> reservierungsbeginn bis reservierungsende nicht den zeitraum gebucht.beginn
> bis gebucht.ende einschliesst
>
>
> Zur Zeit sieht die Abfrage so aus:
> sql_query("SELECT gebucht.* FROM gebucht
> WHERE (
> (gebucht.verweisaufzimmer = '".$zeile[0]."' )
> AND
> ( '".$beginnmiete."' BETWEEN gebucht.beginn AND gebucht.ende)
> AND
> ('".$endmiete."' BETWEEN gebucht.beginn and gebucht.ende)
> ) ");
aber das liefert dir doch die Gebuchten und nicht die Freien ... ???
> Aber diese Abfrage überprüft eben nicht, wenn der gewünschte
> Reservierungszeitraum größer ist....also gebucht.beginn und gebucht.ende
> einschliesst
was ist: gebucht.verweisaufzimmer = '".$zeile[0]."' ) ??
Alle Zimmer die in dem Zeitraum gebucht sind:
SELECT gebucht.*
FROM gebucht
WHERE gebucht.verweisaufzimmer = '".$zeile[0]."' )
AND -- Buchungen mit Anfang oder/und Ende innerhalb START/END
( gebucht.beginn
BETWEEN [START]
AND [END]
OR gebucht.ende[END]
BETWEEN [START]
AND [END]
)
OR -- Buchungen Anfang kleiner und Ende größer als START/END
( gebucht.beginn < [START]
AND gebucht.ende > [END]
)
--
Sebastian Mendel
www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com
www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
--
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive