Andreas Korthaus: ich verzweifele mal wieder an Javascript...

Beitrag lesen

Hallo!

Javascript hat irgndwas gegen mich, und ich hab auch was gegen Javascript. Ich probiere jetzt was weiß ich wie lange ein ganz blödes Countdown-Script hinzubekommen, aber es will einfach nicht. Das Script an sich ist kein Problem, nur möchte ich gerne die Zeitdifferenz zwischen Server und Client ausgleichen, das versuche ich wie folgt:

var servertime = new Date ("<?php echo date ("F j, Y H:i:s");?>");
  // z.B.: var servertime = new Date ("November 14, 2002 02:59:10");
var eventdate = new Date ("<?php echo date ("F j, Y H:i:s",time()+100);?>");
  // z.B.: var eventdate = new Date ("November 14, 2002 03:00:50");
var localtime = new date();
var diff = localtime.getTime() - servertime.getTime();

function toSt(n) {
 s = ""
 if (n < 10) s += "0"
   return s + n.toString();
}

function countdown() {
 cl = document.clock;
 d = new Date();
 var count = Math.floor((eventdate.getTime() - d.getTime() + diff) / 1000);

var Sekunden = toSt(count % 60);
 count = Math.floor(count / 60);
 var Minuten = toSt(count % 60);
 count = Math.floor(count / 60);
 var Stunden = toSt(count % 24);
 count = Math.floor(count / 24);
 var Tage = count;
 if (Tage > 1) {
  var Tage_string = Tage + " Tage, ";
 }
 else if (Tage == 1) {
  var Tage_string = Tage + " Tag, ";
 }
 else {
  var Tage_string = "";
 }

var Gesamt = Tage_string + Stunden + ":" + Minuten + ":" + Sekunden;

if(DHTML) {
   if(NS) setCont("id","Uhr",null,"<span class="Uhr">" + Gesamt + "</span>");
   else   setCont("id","Uhr",null,Gesamt);
}
else return;

window.setTimeout("countdown()",1000);

}

Ohne mein "diff" funktioniert es einwandfrei, nur mit nicht. Es wird nichts ausgegeben. Wenn ich in der Zeile

var count = Math.floor((eventdate.getTime() - d.getTime() + diff) / 1000);

"+ diff" weglasse wird der Countdown angezeigt, aber halt mit Zeitdifferenz zw. Server und Client.

Dann habe ich mir diff mal ausgeben lassen, und da steht "undefined". Verstehe ich überhaupt nicht. Habe absolut keine Idee woran das liegen könnte und stehe kurz davor meinen Monitor aus dem Fenster zu schmeißen :-(

Weiß hier vielleicht jemand wo der "Grundsatzfehler" liegt? Oder hat sonst jemand was an dem Script "zu meckern"? Bin für jeden Tipp sehr dankbar!

Grüße
Andreas