Brauche n kleines Datum Script mit Countdown! :-)

PHPer

Erfahrenes Mitglied
Hallo Leute!

Brauche dringend ein Script, bissel schwer es zu umschreiben. :-) Also es geht um folgendes:
Ich möchte gerne auf einer Webseite für Chattertreffen anzeigen lassenwann das nächste Treffen ist und wieviele Tage es noch dauert bis dahin. Das Treffen findet einmal im Monat stattt, jeden letzten Freitag. Der Hintergedanke zum Script ist jetzt folgendes:
Das Script errechnet das Datum des letzten Freitags im Monat aus und zeigt es inkl. der bis dahin verbleibenden Tage an, also ungefair so:

"Das nächste Treffenf indet am XX.XX.XXXX um 22:00 Uhr statt. Es sind noch XX Tage bis zum nächsten Treffen."

Und sollte der jetzige Tag der letzte Freitag des Monats sein so soll halt folgendes angezeigt werden:

"Heute findet bei Uns ein Treffen statt. Das nächste findet am XX.XX.XXXX um 22:00 Uhr statt. Es sind noch XX Tage bis zum nächsten Treffen."

Wobei Hier das Datum schon vom nächsten Termin sein soll.

Die Frage ist halt jetzt, wie muss das Script dafür aussehen? Bin leider nicht sehr begabt was die Datumsfunktionen von PHP angeht.

Hoffe Ihr könnt mir da weiterhelfen. Danke! :)
 
Hallo, sorry wg. Suchmaschine!

Hab ihn mir angeschaut. weis jedoch mit dem Script so ansich nichts anzufangen, und schon garnicht wie ich es umschreiben muss damit es auf den letzten Freitag eines Monats abgestimmt ist. :(
 
Check mal die Funktion strtotime(); da kann man auch sachen wie "4th Fri", "next Sun" oder "last Fri" als Berechnungsparameter angeben.....

Gruss Danilo
 
Hier dann mal was Konstruktives:
PHP:
<?php

  // Timestamp des letzten Freitags des aktuellen Monats ermitteln
  $stamp = getTimestampLastFriday(date('m',time()),date('Y',time()));

  // Wenn heutiger Tag nach dem Freitag liegt
  // --> Letzten Freitag des nächsten Monats ermitteln
  if ($stamp < (time()-(60*60*24))) {
    $stamp = getTimestampLastFriday((date('m',time())+1),date('Y',time()));
  }

  // Differenz in Tagen ermitteln
  $tage = ceil(($stamp-time())/(60*60*24));

  // Ergebnis ausgeben
  echo "Das nächste Treffen indet am ".date('d.m.Y',$stamp)." um 22:00 Uhr statt.
        Es sind noch ".$tage." Tage bis zum nächsten Treffen.";


  // Hilfsfunktion
  function getTimestampLastFriday($month, $year) {
    // Anzahl der Tage im Übergebenen Monat ermitteln
    $day = date('t', mktime(0,0,0,$month,1,$year));
    // Solange Schleife durchlaufen, bis Freitag erreicht ist
    while (date('w',mktime(0,0,0,$month,$day,$year)) != 5) {$day--;}
    // Timstamp des letzten Freitags zurückgeben (0:00 Uhr)
    return mktime(0,0,0,$month,$day,$year);
  }

?>
Der Code ist zwar nicht der eleganteste, erfüllt jedoch seinen Zweck. Hier wird quasi der letzte Freitag "gesucht". Man könnte es auch über Berechnungen lösen, dafür ist mein Kopf aber noch zu müde.

mfg, snuu
 
Zuletzt bearbeitet:
Zurück