wir haben die externer Link Countdownbox auf unserer Webseite installiert.
Wir haben einen 14täglichen Event. Jeweils am Sonntag um 19.00 Uhr.
Der wurde bis anhin richtig angezeigt.
Doch der Event vom 3. Februar 2013 ist nun um 3 Tage vor-verschoben. Könnte es sein, dass der Februar nur 28 Tage hat und der Countdown hier nicht richtig arbeitet? Die betroffene php datei wäre: calcount.php
Der gesamte Code dieser Datei ist hier:
<?php
# Copyright by: Manuel
# Support www.ilch.de
#defined ('main') or die ( 'no direct access' );
#aktuelle zeit
$result = db_query('SELECT *
FROM prefix_kalender
WHERE (time > '.time().')
AND '.$_SESSION['authright'].' <= recht
ORDER BY time LIMIT 1');
while ($row = db_fetch_assoc($result)) {
$t_id = $row['id'];
$tag = date('d', $row['time']);
$monat = date('n', $row['time']);
$jahr = date('Y', $row['time']);
$stunde = date('G', $row['time']);
$minute = date('i', $row['time']);
$sekunde = date('s', $row['time']);
$event = $row['title'];
}
?>
<script language="JavaScript" type="text/javascript">
// Ziel-Datum in MEZ
var jahr=<?php echo $jahr ?>, monat=<?php echo $monat ?>, tag=<?php echo $tag ?>, stunde=<?php echo $stunde ?>, minute=<?php echo $minute ?>, sekunde=<?php echo $sekunde ?>;
var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);
window.onload = countdown ;
function countdown() {
startDatum=new Date(); // Aktuelles Datum
// Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
if(startDatum<zielDatum) {
var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;
// Jahre
while(startDatum<zielDatum) {
jahre++;
startDatum.setFullYear(startDatum.getFullYear()+1);
}
startDatum.setFullYear(startDatum.getFullYear()-1);
jahre--;
// Monate
while(startDatum<zielDatum) {
monate++;
startDatum.setMonth(startDatum.getMonth()+1);
}
startDatum.setMonth(startDatum.getMonth()-1);
monate--;
// Tage
while(startDatum.getTime()+(24*60*60*1000)<zielDatum) {
tage++;
startDatum.setTime(startDatum.getTime()+(24*60*60*1000));
}
// Stunden
stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);
// Minuten
minuten=Math.floor((zielDatum-startDatum)/(60*1000));
startDatum.setTime(startDatum.getTime()+minuten*60*1000);
// Sekunden
sekunden=Math.floor((zielDatum-startDatum)/1000);
// Anzeige formatieren
(jahre!=1)?jahre=jahre+" Jahre,<br />":jahre=jahre+" Jahr,<br />";
(monate!=1)?monate=monate+" Monate,<br />":monate=monate+" Monat,<br />";
(tage!=1)?tage=tage+" Tage,<br />":tage=tage+" Tag,<br />";
(stunden!=1)?stunden=stunden+":":stunden=stunden+":";
(minuten!=1)?minuten=minuten+":":minuten=minuten+":";
if(sekunden<10) sekunden="0"+sekunden;
(sekunden!=1)?sekunden=sekunden+"":sekunden=sekunden+"";
document.getElementById('countdown').innerHTML=
//jahre+
monate+
tage+
stunden+
minuten+
sekunden;
setTimeout('countdown()',200);
}
// Anderenfalls alles auf Null setzen
else document.getElementById('countdown').innerHTML=
"0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
}
</script><div align="center">
<?php
if(!empty($t_id)) {
echo 'Noch<br /><span id="countdown" >Countdown</span><br />bis<br />'.$event;
}
else {
echo 'Kein Event im Kalender';
}
?>
</div>
Hat jemand das gleiche Problem?
Hat jemand evtl. auch Erfahrungen mit anderen Countdowns (Flash, oder Java) welche sich in das ILCH Clan einbinden lassen (ohne grossen Aufwand ;)). Wichtig für uns, wäre einfach das wir einen Event wiederholen könnten in einem bestimmten Zeitrythmus.
Für Eure hilfe danke ich bestens.
Liebe Grüsse
Matti
betroffene Homepage: externer Link


. bitte die index.htm
