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
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>
/dateNow = new Date(); /dateNow = new Date(); dateNow = new Date();