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