Ragazzi dovrei creare un conto alla rovescia in base ad una data che ho in una tabella mysql..
Come posso realizzarlo? Conoscete qualche esempio o guida?
Grazie mille.
Ragazzi dovrei creare un conto alla rovescia in base ad una data che ho in una tabella mysql..
Come posso realizzarlo? Conoscete qualche esempio o guida?
Grazie mille.
Devi farlo in Javascript.
Con php dovrai solo recuperare il dato dal db, poi questo dovrai passarlo a Javascript col quale farai il countdown.
E poi se per esempio il countdown dura 1 settimana... Come faccio poi in javascript a inserire dati in mysql?
Per quale motivo se dura una settimana dovresti rimettere i dati nella tabella del db con Javascript? Mica devi ricordarti dove sei arrivato a contare l'ultima volta.
Es:
oggi è 01/04/2011 23.10
nel db c'è 09/04/2011 12.00
php legge il valore nel db e lo passa a Javascript
a Javascript fai leggere la data attuale, quella passata da php e gli fai calcolare la differenza tra le due date ogni secondo, minuto, ora o quello che vuoi.
Se chiudi la pagina non devi salvare niente nel db, quando la riaprirai si riparte da php che legge il dato e lo passa a JS.
si si infatti ci ho pensato dopo...
Solo che non riesco a gestire anche giorni mesi e anni di due date...
ho questo:
$secondi = mktime(22,0,0,$mm, $dd, $yyyy);
$secondi2 = mktime(date("G"), date("i"), date("s"), date("m"), date("d"), date("Y"));
$seconds = $secondi - $secondi2;
e passo seconds allo script:
<script>
var seconds = ("<?=$seconds?>");
function $(id) {
return document.getElementById(id);
}
function addOnload(f) {
var prev = window.onload;
window.onload = function() {
if (prev) prev();
f();
}
}
function writecounter(hh, mm, ss) {
$('ore').value = (hh < 10)? "0"+hh : hh;
$('min').value = (mm < 10)? "0"+mm : mm;
$('sec').value = (ss < 10)? "0"+ss : ss;
}
function startcount() {
hh = Math.floor(seconds / 3600);
mm = Math.floor((seconds - (hh*3600)) / 60);
ss = seconds - (hh*3600) - (mm*60);
writecounter(hh, mm, ss);
seconds--;
if (seconds != -1) {
setTimeout('startcount()', 1000)
}
else {
// fai qualcosa
alert("ho finito!");
}
}
var hh = Math.floor(seconds / 3600);
var mm = Math.floor((seconds - (hh*3600)) / 60);
var ss = seconds - (hh*3600) - (mm*60);
addOnload(startcount);
</script>
solo che vorrei anche gestire giorni mesi e anni.. ma non so come fare...
Chiedi nella sezione Javascript, il tuo non è un problema con PHP.
si si ok ok hai ragione.. Scusami..
poi dai un occhiata anche qua
http://keith-wood.name/countdown.html
phone, ti sono sincero... Lo sto provando ma non ci ho capito niente...