Mailinglisten-Archive |
Hallo,
Also eigentlich willst du alle zimmer haben die KEINE buchungen
haben, wo weder start noch enddatum im angegeben zeitraum liegen
oder?
ersteinmal die buchungen, die sich ueberschneiden:
WHERE
gebucht.beginn <= $ende AND gebucht.ende >= $beginn
Nun wuerde ich deine Zimmer mit diesen Buchungen Left-Joinen und alle
herausfiltern, die keine solche Buchungen haben (buchung = null).
Dann hast du die Zimmer, die im gewuenschten Zeitraum frei sind.
Kann aber auch sein, dass ich mirch irre. ist ja schliesslich
Freitagabend.
:)
Gruesse, Ilja
On 11 Mar 2005 at 19:07, hans-joachim wrote:
> 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 diese Abfrage überprüft eben nicht, wenn der gewünschte
> Reservierungszeitraum größer ist....also gebucht.beginn und gebucht.ende
> einschliesst
>
> Wie muss ich die Abfrage modifieren???????
>
> --
> Gruss
>
> Hans-Joachim
>
> --
> Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
> -->> http://www.4t2.com/mysql
>
>
--
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive