Vinzenz Mai: while Schleife in if Abfrage

Beitrag lesen

Hallo Sabine

mir gefällt das Format 000-00-00 00:00:00 aber nicht.

Das brauchst Du auch nicht zu verwenden, das ist DATETIME, obwohl es für Deine Termine ideal ist *g*

Ich möcht gerne das Format tt.mm.jjjj haben!

Das geht nicht ganz, DATE ist YYYY-MM-DD. Aber wo ist das Problem? Du kannst, soweit es sich um Angaben im Wertebereich von Timestamps handelt, die PHP-eigenen Funktionen mktime() und date() zur Umwandlung verwenden. Ansonsten hindert Dich nichts daran, Dir ein paar Funktionen zu schreiben, die Dir

a) Dein bevorzugten Format in DATETIME umwandelt
b) aus DATETIME Dein bevorzugtes Format erzeugt.

womit ich beim nächsten Punkt wäre. Es ist eine gute Idee, systematisch ans Programmieren heranzugehen. Teile Aufgaben in einzelne Teilaufgaben auf, untergliedere diese Teilaufgaben wiederum, wenn das sinnvoll ist. Eine Einzelaufgabe wird dann typischerweise von einer Funktion erledigt. Manche Funktionen, die Du so nach und nach schreibst, kannst Du wiederverwenden. Diese legst Du in Funktionsbibliotheken ab...

Als Grobgliederung für Deine Aufgabe, die Du Dir gestellt hast:

Gebe alle Termine der nächsten 7 Tage aus:

Mögliche Untergliederung (so wie Du sie gemacht hast)

Ermittle das heutige Datum
  Für die nächsten 7 Tage
     Ermittle das Datum des Tages
     Gebe das Datum aus
     Ermittle die Termine des Datums
     Für alle Termine
         Gebe den Termin aus

Bei Verwendung von DATETIME als Datentyp für Deine Termine kannst Du Dir viel Arbeit sparen: Du sagst der Datenbank folgendes:

Gib mir alle Termine zwischen Anfangsdatum und Enddatum, nach Termin aufsteigend sortiert.

Deine Ausgabefunktion muss nur noch dafür sorgen, dass jedesmal, wenn sich der Tag ändert, der Tag extra ausgegeben wird. Denke daran, dass Datenbankabfragen im Vergleich zur Ausführung von normalem PHP-Code sehr teuer sind.

Freundliche Grüße

Vinzenz