Christian Seiler: Monat in Tabellenform erstellen

Beitrag lesen

Hallo Jeena,

December 2006
Su  Mo  Tu  We  Th  Fr  Sa

Warum fängst Du mit Sonntag an? Wenn das ein hebräischer oder islamischer Kalender wäre, wäre das ja in Ordnung, aber beim gregorianischen Kalender finde ich das schlichtweg eine Unart. ;-)

Klar ist mir dass das mit zwei Schleifen gehen muss aber wie das komplette aussehen soll, da komme ich nicht drauf, hat vielleicht jemand Lust mir da auf die Sprünge zu helfen?

Nein, Du brauchst nur _eine_ Schleife, dazu gleich mehr.

Erst einmal musst Du wissen, wie viele Tage in dem Monat sind, das kannst Du z.B. kurz selbst programmieren (die sind ja fest bzw. Februar hat alle 4 Jahre einen Tag mehr, alle 100 Jahre wieder nicht und alle 400 Jahre doch wieder) oder schauen, ob die Date-Klasse von Ruby Dir eine Funktion dafür bietet.

Danach legst Du ein Date-Objekt für den ersten dieses Monats an. Du lässt Dir den Wochentag azurückgeben. Wenn es ein Montag ist, machst Du gar nichts, wenn es kein Montag ist, schreibst Du N leere Tabellenzellen, mit N = Anzahl der Tage bis zum nächsten Montag, bei Sonntag z.B. N = 1, bei Dienstag N = 6, etc.

Danach programmierst Du eine Schleife, die folgendes macht:

- Gib eine Tabellenzelle mit der aktuellen Tagesnummer aus.
 - Wenn Du gerade das letzte Datum des Monats ausgegeben hast, schließe
   die Tabelle ab und beende die Schleife.
 - Wenn der Wochentag ein Sonntag war, füge danach ein </tr><tr> ein
   (oder wenn's kein HTML ist halt was entsprechendes)
 - Erhöhe das Datum um eins

Damit solltest Du Deinen Kalender bekommen.

Viele Grüße,
Christian

--
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." - Bjarne Stroustrup