Salve a tutti,
ho un piccolo problema con un countdown del quale posto il codice.
In pratica lo script prende una data futura la confronta con quella attuale e mostra la differenza aggiornandosi ogni secondo.
Il problema è quello di passare allo script la data del server e non quella del client.
Nella riga dateNow = new Date(); a dateNow viene assegnata la data odierna del client.
Io ho modificato la suddetta riga in dateNow = new Date(".date("Y,n,j,H,i,s", time())."); in modo tale da assegnare a Date la data del server impostata come variabile php.
La variabile $data contiene la data futura ed è formattata allo stesso modo dell'argomento passato a Date.
Il risultato che ottengo è corretto ma il contdown rimane fisso anzichè aggiornarsi ogni secondo. Qualcuno sa perchè e magari sa dirmi come risolvere la situazione?
Grazie in anticipo.
Puravida
/dateNow = new Date(); /dateNow = new Date(); dateNow = new Date();codice:<script type=\"text/javascript\"> dateFuture1 = new Date($data); function GetCount(ddate,iid){ dateNow = new Date(".date("Y,$mese_attuale,j,H,i,s", time())."); //grab current date //dateNow = new Date(); //grab current date amount = ddate.getTime() - dateNow.getTime(); //calc milliseconds between dates delete dateNow; // if time is already past if(amount < 0){ window.location = \"index.php\"; } // else date is still good else{ days=0;hours=0;mins=0;secs=0;out=\"\"; amount = Math.floor(amount/1000);//kill the \"milliseconds\" so just secs days=Math.floor(amount/86400);//days amount=amount%86400; hours=Math.floor(amount/3600);//hours amount=amount%3600; mins=Math.floor(amount/60);//minutes amount=amount%60; secs=Math.floor(amount);//seconds out += (days<=9?'<span class=giorni>0':'<span class=giorni>')+days+\"</span>\"; out += (hours<=9?'<span class=ore>0':'<span class=ore>')+hours+\"</span>\"; out += (mins<=9?'<span class=minuti>0':'<span class=minuti>')+mins+\"</span>\"; out += (secs<=9?'0':'')+secs+\" \"; out = out.substr(0,out.length-2); document.getElementById(iid).innerHTML=out; setTimeout(function(){GetCount(ddate,iid)}, 1000); } } window.onload=function(){ GetCount(dateFuture1, 'countbox1'); } </script>

Rispondi quotando