Antipitch: Web: Datum und Zeit Countdown programmieren

Moin allerseits,
ich mache mich gerade an die Programmierung eines Datum-und Zeit Countdown-Moduls für ein PHP/MySQL-basiertes CMS. Es werden grafische Zähler ausgegeben (barrierefrei mit Text-Fallback natürlich), die optional clientseitig weiter arbeiten sollen (optional inkl. Anzeige der Sekunden).

Das Ding muss nicht irgendwelchen Garantieansprüchen genügen, aber es soll natürlich möglichst gut werden. Mein bisheriger Plan ist, per Javascript die vom Server ausgelieferte Sekundenzahl aufzufangen und davon ausgehend weiter runter zu zählen. Die Zeit zwischen Erstellung des Wertes auf dem Server und Laden einer entsprechenden Seite im Browser geht mir dann natürlich "verloren", aber wenn ich bisher richtig denke, ließe sich das auch per Ajax-Abfrage nicht vermeiden (zumal eine letztere, sagen wir mal minütlich ausgeführt, sich auch mit einer evtl. Sekundenanzeige beißen würde).

Langer Rede kurzer Sinn: Jemand Ideen zu sowas oder Erfahrungen. Würde ich interessant finden...

cheers
Antipitch

  1. Ich würde empfehlen, die Zeit direkt vom Client via JS-Date-Objekt zu nehmen, daraus den betreffenden Countdown berechnen (Nutze den Modulo-Operator!) und diesen per innerHTML in das entsprechende Element zu schreiben. Alternativ könntest Du schlimmstenfalls einen iframe nehmen, der sich jede Sekunde aktualisiert, wenn es auch ohne JS funktionieren soll (sehr eklige Lösung).

    Gruß, LX

    --
    RFC 1925, Satz 8: Es ist komplizierter als man denkt.
    1. @@LX:

      nuqneH

      Ich würde empfehlen, die Zeit direkt vom Client via JS-Date-Objekt zu nehmen

      Hm, wenn nun aber die Zeit des Servers relevant ist? Man weiß nicht, wie die Uhren der Nuzter ticken, in welcher Zeitzone …

      Qapla'

      --
      Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
      1. Hi beide,
        hatte ich eigentlich implizit ausgedrückt haben wollen, sorry: es soll sich auf jeden Fall um die Serverzeit handeln.

        Errechnung etc. ist auch kein Problem, es geht mir halt um evtl. Ideen zum beschriebenen "Live beim Client Weiterzählen". Inzwischen denke ich, dass ich bei aktivierter Sekundenanzeige rein clientseitig (also nicht über Auslesen des kompletten JS time() Objekts, aber in Sekundentaktung) weiterzählen werde und anonsten minütlich eine Ajax-Anfrage senden werde.

        thx
        Antipitch

  2. hi,

    Langer Rede kurzer Sinn: Jemand Ideen zu sowas oder Erfahrungen. Würde ich interessant finden...

    Nur mal son Gedanke: Wenn Du parallel zum Ajax-Request, der die Zeit vom Server holt, die Laufzeit mit ICMP ermittelst, könntest Du damit den Laufzeit-Fehler rauspolieren.

    Hotte

    --
    Wenn der Kommentar nicht zum Code passt, kann auch der Code falsch sein.
    1. Hi Hotte,
      das

      Nur mal son Gedanke: Wenn Du parallel zum Ajax-Request, der die Zeit vom Server holt, die Laufzeit mit ICMP ermittelst, könntest Du damit den Laufzeit-Fehler rauspolieren.

      hört sich sehr interessant an, werd ich mal checken. Dank dir!

      cheers
      Antipitch