PHP Countdown mal anderst

Hallo,
ich hab mal einen PHP-Countdown für meine Seite geschrieben. Und am Anfang hab ich gedacht wie gut das funktioniert. Die Idee zum countdown hatte ich irgendwo aus dem Internet und auf den ersten Blick scheint das ganze sehr einfach zu sein.
Aber dann habe ich mir gedacht, dass ich doch irgendwas missverstanden habe.
also wir haben einen timestamp in der zukunft den nennen wir $zukunft
wir haben den actuellen timestamp den nennen wir $aktuell.
so wir fangen:
$rest=$zukunft-$aktuell;
$echo date(„G:i:s“, $rest);
so dann zeigt uns der COunter rein theoretisch Stunden:Minuten:Sekunden bis zum ereignis an.
Ich hab das ganze einbisschen erweitert, habe noch tage drin. Aber das ist jetzt egal.
Aufjedenfall hab ich zuerst nicht gemerkt, dass das nicht so richtig funktioniert. Nachher ist mir aufgefallen, dass das ganze 1 h zuspät läuft. Und wenn es z.B. 23 h 54 min sind hat es 00:54 angezeigt.
Naja ich hab dann gedacht, geht wohl nicht und hab im internet, nach einem Countdown-Beispiel gesucht. Natürlich nix gescheites gefunden.

Dann hab ich einfach $rest-3600 gemacht und jetzt funzt das einwandfrei. Was ich aber trotzdem nicht verstehe, wieso funzt das erst mit $rest-3600 einwandfrei. Das wollte ich fragen.
mfg
Paul

Erste (ungetestete) Vermutung: könnte an der Sommer-/Winterzeit liegen.

ich persönlich würde die Differenz des Datums allerdings nicht per date() sondern wie auf folgender Seite beschrieben berechnen:
http://www.addedbytes.com/php/php-datediff-function/

Aber viele Wege führen ans Ziel :wink:

Grüße
Stefan

jo aber die lösungen sind bei weitem net so einfach wie die meine ^^
aber das mit sommerzeit hast du vollkommen recht -.-
muss halt im winter wegmachen ^^ oder beim eintragen eine funktion mit sommerzeit hinzufügen mal überlegen.

also wir haben einen timestamp in der zukunft den nennen wir
$zukunft
wir haben den actuellen timestamp den nennen wir $aktuell.
so wir fangen:
$rest=$zukunft-$aktuell;
$echo date(„G:i:s“, $rest);
so dann zeigt uns der COunter rein theoretisch
Stunden:Minuten:Sekunden bis zum ereignis an.
Ich hab das ganze einbisschen erweitert, habe noch tage drin.
Aber das ist jetzt egal.

eigentlich ist das nicht egal, weil du damit nicht die anzahl der stunden zw. heute um 13:00 und morgen 14:00 (das muessten 25 sein) erhalten kannst.

in wirklichkeit berechnest du mit deinem beispiel die uhrzeit aus (1.1.1970 + $rest)

http://de.wikipedia.org/wiki/Unixzeit

Du kannst die Sommerzeit auch ueber date() abfragen:

if ( date(‚I‘) == 1 ) {
// sommerzeit
}
else {
// winterzeit
}

Hallo,

date() liefert das Datum in der aktuellen Zeitzone, evtl. hilft es schon, das durch gmdate() zu ersetzen.

Alex

das war ja einfacher als die polizei erlaubt :wink:
Super tip!

date() liefert das Datum in der aktuellen Zeitzone, evtl.
hilft es schon, das durch gmdate() zu ersetzen.

Alex

ja ist ein guter vorschlag hätte ich auch genommen, aber in meinem fall hat mir der alx gut geholfen, mit gmdate();

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]