Also ich habe folgendes problem:
die zeit, wann ein gebäude des benutzers fertiggebaut ist, wird in der datenbank gespeichert.
mit folgendem code möchte ich einen countdown bis zu diesem zeitpunkt einfügen:
(die variable $timestamp ist die variable in der immer gespeichert wird, welcher wert in der Datenbank in der Spalte (beispielsweiße) Kraftwerk_fertig steht) (der name Kraftwerk_fertig wird dann in jedem schleifendurchlauf geändert! zB zu Metallmine_fertig)
dies ist auch kein problem! nur komischerweiße zeigt er mir das maximal einmal auf der seite an!
also macht er des (wenns zum beispiel 2mal durch eine schleife in php gejagt wird) folgendes:
ist wahrscheinlich ein ganz einfach zu lösendes problem, nur ich kann nicht richtig javascript (hab nur des ganze php und sql zeugs gemacht, und mir diesen countdown ausm internet gesucht)
die zeit, wann ein gebäude des benutzers fertiggebaut ist, wird in der datenbank gespeichert.
mit folgendem code möchte ich einen countdown bis zu diesem zeitpunkt einfügen:
(die variable $timestamp ist die variable in der immer gespeichert wird, welcher wert in der Datenbank in der Spalte (beispielsweiße) Kraftwerk_fertig steht) (der name Kraftwerk_fertig wird dann in jedem schleifendurchlauf geändert! zB zu Metallmine_fertig)
PHP:
echo 'Fertig in:<br/>';
$timestamp=$userbuilding_step[''.$building_row['building_name'].'_fertig'];
$fertig=array();
$fertig['jahr']=date("Y", $timestamp);
$fertig['monat']=date("n", $timestamp);
$fertig['tag']=date("j", $timestamp);
$fertig['stunde']=date("G", $timestamp);
$fertig['minute']=date("i", $timestamp);
$fertig['sekunde']=date("s", $timestamp);
echo '<html>
<script language="Javascript">
<!--
var CountdownJahr = '.$fertig['jahr'].';
var CountdownMonat = '.$fertig['monat'].';
var CountdownTag = '.$fertig['tag'].';
var CountdownStunde = '.$fertig['stunde'].';
var CountdownMinute = '.$fertig['minute'].';
var CountdownSekunde = '.$fertig['sekunde'].';
function CountdownAnzeigen()
{
var Jetzt = new Date();
var Countdown = new Date(CountdownJahr, CountdownMonat-1, CountdownTag, CountdownStunde, CountdownMinute, CountdownSekunde);
var MillisekundenBisCountdown = Countdown.getTime()-Jetzt.getTime();
var Rest = Math.floor(MillisekundenBisCountdown/1000);
var CountdownText = "";
if(Rest >= 31536000)
{
var Jahre = Math.floor(Rest/31536000);
Rest = Rest-Jahre*31536000;
if(Jahre > 1 || Jahre == 0)
{
CountdownText += Jahre + ":";
}
else if(Jahre == 1)
{
CountdownText += Jahre + ":";
}
}
if(Rest >= 86400)
{
var Tage = Math.floor(Rest/86400);
Rest = Rest-Tage*86400;
if(Tage > 1 || Tage == 0)
{
CountdownText += Tage + ":";
}
else if(Tage == 1)
{
CountdownText += Tage + ":";
}
}
if(Rest >= 3600)
{
var Stunden = Math.floor(Rest/3600);
Rest = Rest-Stunden*3600;
if(Stunden > 1 || Stunden == 0)
{
CountdownText += Stunden + ":";
}
else if(Stunden == 1)
{
CountdownText += Stunden + ":";
}
}
if(Rest >= 60)
{
var Minuten = Math.floor(Rest/60);
Rest = Rest-Minuten*60;
if(Minuten > 1 || Minuten == 0)
{
CountdownText += Minuten + ":";
}
else if(Minuten == 1)
{
CountdownText += Minuten + ":";
}
}
if(Rest > 1 || Rest == 0)
{
CountdownText += Rest + "";
}
else if(Rest==1)
{
CountdownText += Rest + "";
}
document.getElementById(\'Countdown\').innerHTML = CountdownText;
window.setTimeout("CountdownAnzeigen()", 1000);
}
//-->
</script>
</head>
<body onLoad="CountdownAnzeigen();">
<span id="Countdown"></span>
</html>';
also macht er des (wenns zum beispiel 2mal durch eine schleife in php gejagt wird) folgendes:
die obere zahl zählt runter, aber unter dem zweiten "Fertig in:" wird nichtsmehr angezeigt!Fertig in:
10:51:6
Fertig in:
ist wahrscheinlich ein ganz einfach zu lösendes problem, nur ich kann nicht richtig javascript (hab nur des ganze php und sql zeugs gemacht, und mir diesen countdown ausm internet gesucht)