Originariamente inviato da fmortara
codice:
function countdown() {
if(mancanti>0) {
mancanti--;
secondi = mancanti;
giorni = parseInt(secondi/86400);
secondi = secondi - (giorni * 86400);
ore = parseInt(secondi/3600);
secondi = secondi - (ore * 3600);
minuti = parseInt(secondi/60);
secondi = secondi - (minuti * 60);
messaggio = (giorni>0) ? giorni+"d " : "";
messaggio = (giorni>0 || ore>0) ? messaggio+ore+"h " : "";
messaggio = (giorni>0 || ore>0 || minuti>0) ? messaggio+minuti+"m " : "";
messaggio = messaggio+secondi+"s";
document.getElementById(iditem).innerHTML = messaggio;
setTimeout("countdown()",1000);
}
else
{
messaggio = "{EXPIRED}";
document.getElementById(iditem).innerHTML = messaggio;
}
}
La funzione la richiamo in questo modo:
codice:
<script type="text/javascript">
var mancanti = 60000;
var iditem = 'timeleft-1';
window.onload=countdown();
</script>
<script type="text/javascript">
var mancanti = 60000;
var iditem = 'timeleft-2';
window.onload=countdown();
</script>
Personalmente passerei mancanti e iditem come parametri alla funzione...
Codice PHP:
function countdown(mancanti,iditem) {
if(mancanti>0) {
mancanti--;
secondi = mancanti;
giorni = parseInt(secondi/86400);
secondi = secondi - (giorni * 86400);
ore = parseInt(secondi/3600);
secondi = secondi - (ore * 3600);
minuti = parseInt(secondi/60);
secondi = secondi - (minuti * 60);
messaggio = (giorni>0) ? giorni+"d " : "";
messaggio = (giorni>0 || ore>0) ? messaggio+ore+"h " : "";
messaggio = (giorni>0 || ore>0 || minuti>0) ? messaggio+minuti+"m " : "";
messaggio = messaggio+secondi+"s";
document.getElementById(iditem).innerHTML = messaggio;
setTimeout("countdown("+mancanti+",'"+iditem+"')",1000);
}
else
{
messaggio = "{EXPIRED}";
document.getElementById(iditem).innerHTML = messaggio;
}
}
<script type="text/javascript">
window.onload=countdown(60000,'timeleft-1');
</script>
<script type="text/javascript">
window.onload=countdown(60000,'timeleft-2');
</script>
Non ho provato, ma immagino potrebbe funzionare.