Countdown in Datenbank bzw Serverseitig

Hallo liebe Gemeinde,

ich möchte gernen einen Countdown Serverseitig auf einer Homepage einbauen.
Also wenn mehrere Benutzer mit unterschiedlichen Rechner auf der Seite sind, soll der Countdown immer am selben Zeitpunkt sein. Kann man sowas in einer Datenbank speichern oder wie realisiert man sowas am Besten?

Bin in der Hinsicht noch ein Leihe und bin für jeden Tipp sehr dankbar…

Grüße

Start

Hi,

ein Countdown der eine Zahl runter zählt? Dann am besten in der Datenbank merken.
ein Countdown der eine Zeitspanne runter zählt? Dann würde ich es live errechen (und vielleicht das Enddatum aus der Datenbank holen um es leichter wiederverwenden zu können)

Grüße
IceDragon

Hallo,

das ist relativ einfach, auf Serverseite legst du das Ende für den countdown fest, das könnte ein Datum sein.
Um dann bei deinem Besucher im Browser den Countdown runter zählen zu lassen ist dann noch etwas JavaScript nötig.

Schau mal hier, das ist glaube ich genau das was du suchst:
http://www.codingcenter.de/beitrag/anzeigen/33-Einfa…

etwas überladen , aber es zeigt die restzeit an egal wie der browser bzw der computer eingestellt ist , selbst mit falscher client zeit , cauntet das Ding richtig :smile:

var thecounterdiv = „counterdiv“;
<?php
$timerscript ="";
$jetzttime = time();
/* 15.12.2013 13:00:00 */
$turniertime = mktime ( 13 , 0 , 0 , 12 , 15, 2013 );
$restzeit = $turniertime-$jetzttime;

?>
var eventzeit = <?php echo $restzeit; ?>;
var jetztneu1 = new Date();
var nowtime1 = jetztneu1.getTime() / 1000 ;
<?php
if ($restzeit > 0) {
?>updatecountdown();<?php
}
?>
function updatecountdown() {
var jetztneu = new Date();
var nowtime = jetztneu.getTime() / 1000 ;
var restzeit = eventzeit-(nowtime-nowtime1);
var tage = Math.floor((restzeit/(60*60*24)));
var stunden = Math.floor(((restzeit-(tage*60*60*24))/(60*60)));
var minuten = Math.floor((restzeit-(tage*60*60*24)-(stunden*60*60))/(60));
var secunden = Math.floor((restzeit-(tage*60*60*24)-(stunden*60*60)-(minuten*60)));
var zeitcounter = document.getElementById(thecounterdiv);
var htmlchange="";
if (tage > 0) {
if (tage > 1) {
htmlchange+=tage+" days „;
} else {
htmlchange+=tage+“ day „;
}
}
if (stunden > 0) {
if (stunden > 1) {
htmlchange+=stunden+“ hours „;
} else {
htmlchange+=stunden+“ hour „;
}
}
if (minuten > 0) {
if (minuten > 1) {
htmlchange+=minuten+“ min „;
} else {
htmlchange+=minuten+“ min „;
}
}
if (secunden > 0) {
if (secunden > 1) {
htmlchange+=secunden+“ sec";
} else {
htmlchange+=secunden+" sec";
}
} else {
htmlchange+=secunden+" sec";
}
zeitcounter.innerHTML=" "+htmlchange;
setTimeout(„updatecountdown()“,1000);
}