Visualizzazione dei risultati da 1 a 9 su 9

Discussione: conto alla rovescia

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794

    conto alla rovescia

    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.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Devi farlo in Javascript.
    Con php dovrai solo recuperare il dato dal db, poi questo dovrai passarlo a Javascript col quale farai il countdown.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    E poi se per esempio il countdown dura 1 settimana... Come faccio poi in javascript a inserire dati in mysql?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    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.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    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...

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Chiedi nella sezione Javascript, il tuo non è un problema con PHP.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    si si ok ok hai ragione.. Scusami..

  8. #8
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    poi dai un occhiata anche qua

    http://keith-wood.name/countdown.html

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    phone, ti sono sincero... Lo sto provando ma non ci ho capito niente...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.