salve, devo fare un countdown da inserire in una pagina usando però come riferimenti l'ora del server, mi avevano consigliato di farlo in jsp ma io nn lo so usare![]()
mi sono ingegnato e ho fatto un mix di php e javascript![]()
(ke nn conosco neanke troppo)
solo ke nn funziona :rollo:![]()
l'errore sta nel javascript (almeno penso), praticamente la prima volta ke kiamo la funzione passa il valore ke mi serve (e funge tutto) mentre alla rikiamata interna fa cilekka
![]()
la console javascript di firefox mi dice "Errore: countdowntime is not defined" in questa riga "setTimeout("countdown(countdowntime)",1000); //ricaricamento script dopo 1 secondo"
questo è il codice
p.s.Codice PHP:<html>
<head>
<title>countdown</title>
<?
/* questo file imposta l'ora finale e quella attuale e visualizza il countdown */
// ora finale in formato timestamp (sarà letta da una query)
$endtime = mktime(11,20,0,9,27,2006); //11:20:00 27/9/2006
//echo "endtime : "; //controllo
//echo $endtime; //controllo
//echo "endtime in normalformat : "; //controllo
//echo date('d m Y H:i:s',$endtime); //controllo
// ora attuale in formato timestamp
$nowtime = time();
//echo " nowtime : "; //controllo
//echo $nowtime; //controllo
//echo "nowtime in normalformat : "; //controllo
//echo date('d m Y H:i:s',$nowtime); //controllo
// tempo rimanente
$countdowntime = $endtime - $nowtime;
//echo " tempo mancante : ";
//echo $countdowntime;
//$hours = round(($countdowntime/(60*60)),0);
//$minutes = round((($countdowntime%(60*60))/60),0);
//$seconds = round((($countdowntime%(60*60))%60),0);
//echo "tempo mancante normalformat : $hours : $minutes : $seconds";
?>
<script language="javascript1.2">
function countdown(countdowntime)
{
//document.write("dentroscript");//controllo
//document.write(countdowntime);//controllo
if (countdowntime >= 0)
{
//document.write("dentroif");//controllo
hours = Math.floor(countdowntime/(60*60));//calcolo ore
minutes = Math.floor((countdowntime%(60*60))/60);//calcolo minuti
seconds = Math.floor((countdowntime%(60*60))%60);//calcolo secondi
countdowntime = countdowntime - 1;//decremento tempo
var testo = hours + " : " + minutes + " : " + seconds;//testo da visualizzare
//document.write(testo);
document.getElementById("a").innerHTML = testo;
setTimeout("countdown(countdowntime)",1000); //ricaricamento script dopo 1 secondo
}
else
{
//document.write("dentroelse");
var testo = "finito";
document.getElementById("a").innerHTML = testo;
}
}
</script>
</head>
<body onLoad="countdown(<? echo $countdowntime; ?>)">
<div id="a">h:m:s</div>
</body>
</html>
lo so ke è scritto con i piedi ma nn so fare di meglio![]()

), praticamente la prima volta ke kiamo la funzione passa il valore ke mi serve (e funge tutto) mentre alla rikiamata interna fa cilekka
Rispondi quotando
