Abfrage - Stundenweise - Belegung - Reservierung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfrage - Stundenweise - Belegung - Reservierung

    Hallo!

    Ich steh mal wieder auf dem Schlauch!

    Ich habe eine Seite erstellt, auf der jemand einen Raum buchen kann.

    Wenn ein Raum an einem Tag gebucht ist, ist er "belegt".

    Nun möchten meine Kollegen diesen Raum mehrmals am Tag nach stunden vergeben.

    D.h.

    22.01.13 Raum 1 08:00 Uhr bis 10:00 Uhr Kollege A
    22.01.13 Raum 1 12:00 Uhr bis 17:00 Uhr Kollege B


    Nun Könnte Kollege C kommen und den Raum von 10:00 bis 12:00 Uhr buchen.

    Nur möchte ich jetzt per MySQL abfragen ob das geht. D.h. Wenn C eingibt 09:30 Uhr bis 13:00 Uhr soll kommen, NEIN geht nicht.

    Meine Datenbank sieht so aus:

    vernehmung_id smallint(10)
    vernehmung_raum_id smallint(10)
    vernehmung_tag date
    vernehmung_beginn varchar(5)
    vernehmung_ende varchar(5)
    vernehmung_user_id smallint(10)
    vernehmung_user_name varchar(40)
    vernehmung_time int(15)

    Ich denke vernehmung_beginn und vernehmung_ende werde ich nicht als VARCHAR lassen können.

    Hat jemand eine Idee?
    Beachte: Dumm ist, wer Dummes tut.

  • #2
    Deine Vermutung ist richtig. Du wirst sie zu irgendwie erfassbares Zeit-Werten umwandeln müssen. MySQL-Nativ oder ein simples Unix-Timestamp (den MySQL ja auch kann) sollte vollkommen ausreichen. Wichtig ist nur, dass dein Vergleichswert ebenfalls dem Format entspricht.

    Syntax (ungeprüft –*mir fällt grad auf, schon seit Monaten kein MySQL mehr von Hand geschrieben zu haben):

    Code:
    SELECT * FROM belegung WHERE vernehmung_beginn <= vergleichszeitpunkt AND vernehmung_ende >= vergleichzeitpunkt AND vernehmung_id = raumid
    Ein oder mehr Ergebnisse: Keine Belegung möglich, der gewünschte Starttermin liegt innerhalb einer Belegung. Selbes natürlich auch noch mal mit dem Endtermin. Das geht auch in einem Query, aber das darfst du selbst ausknobeln –*die Idee kommt hoffentlich rüber

    Damit bist du aber noch nicht am Ende. Sauber wäre es, einen gewissen Schwellwert für Übergänge zu berücksichtigen. D.h. wenn zwischen zwei Belegungen nur 5 Minuten liegen, macht es keinen Sinn hier eine Buchung zuzulassen –*jedenfalls nicht, ohne eine Warnmeldung auszugeben.

    BTW.: Vernehmung?
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Kommentar


    • #3
      Danke. Ich probier mal was aus.

      Off-Tropic

      Ja ein Intranet-Angebot für eine Ermittlungsbehörde.
      Beachte: Dumm ist, wer Dummes tut.

      Kommentar

      Lädt...
      X