Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: lavorare con le date

  1. #1
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110

    lavorare con le date

    dovrei creare una funzione che prendendo la data di registrazione di un utente dal DB mi dovrebbe calcolare il tempo che è passato... cosa mi consigliate... nel DB la data la metto come testo con questo formato es. 13-06-2005 o come un numero intero? e come poi potrei fare il confronto con la data attuale?

  2. #2
    mmm... date...

    tra poco ti risponde piero.mac...!!!


    http://forum.html.it/forum/showthrea...hreadid=459634
    Ciao!

  3. #3
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    calcolare quanti giorni intercorrono tra la data di oggi e altra data.
    # Numero giorni negativo per le date future
    $data = "2000-01-01"; # metti la data da comparare in formato yyyy-mm-dd
    $data1 = "01-01-2000"; # metti la data da stampare nella visualizzazione in frm. italiano
    Function QuantiGiorni() {
    global $data, $total;
    $query = mysql_query("select to_days(NOW())-to_days('$data') as tot ");
    return $total = mysql_result($query,0,'tot');
    }

    credo che qst sia il codice che possa andare bene... quindi dovrei usare la forma "11-06-06", prendere il valore registrato nel DB inserirlo in una variabile kiamata "$data", prendere la data "odierna" e inserirla nella variabile "$data1"... alla fine della funzione dovrebbe darmi $total con il risultato dei giorni che intercorrono tra le due vero? grazie per l'aiuto!

  4. #4
    Originariamente inviato da HammerFist
    quindi dovrei usare la forma "11-06-06", prendere il valore registrato nel DB inserirlo in una variabile kiamata "$data", prendere la data "odierna" e inserirla nella variabile "$data1"... alla fine della funzione dovrebbe darmi $total con il risultato dei giorni che intercorrono tra le due vero? grazie per l'aiuto!
    Fermo....

    la data nel db deve essere 2006-06-11 cioe' yyyy-mm-dd...

    Se poi la data e' correttamente nel db non serve estrarla per assegnarla ad un variabile e poi calcolarla.... si fa tutto con la stessa query.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Come lo scrive piero.mac la data deve essere al formato yyyy-mm-dd. Non c'è via di scampo per poterla usare facilmente !!!!

  6. #6
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    allora io in fase di registrazione passo al DB un valore del tipo "yyyy-mm-dd" (fermo restando che il campo nel DB è in formato testo)... dopodike a quella funzione gli passerò il dato preso dal DB e mi dovrebbe tornare l'informazione che mi serve... ho capito bene?

    tipo:

    ---pagina registrazione---
    $data= date( "y/m/d");

    registro così la data nel DB

    ---pagina di visualizzazione dati---
    (...)
    $dati = "SELECT * FROM utenti";
    $query = mysql_db_query($db_name, $dati);
    $row = mysql_num_rows($query);
    if($row>0){
    for( $i=1; $i <= $row ; $i++)
    {
    $riga = mysql_fetch_object($query);
    (...)
    $data = $riga->data;

    (...)

    Function QuantiGiorni() {
    global $data, $total;
    $query = mysql_query("select to_days(NOW())-to_days('$data') as tot ");
    return $total = mysql_result($query,0,'tot');
    }

    (...)
    echo $total;
    (...)
    }

    giusto?

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Se usi mysql usa il formato date che ha il formato giusto e non un campo char o varchar.

  8. #8
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    ok! adesso provo a far funzionare il tutto, vi chiedo aiuto, grazie!

  9. #9
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    ho messo questo codice ma nel db la data non la salva come mai?

    $datas= date( "y/m/d");
    $dati = " INSERT INTO utente VALUES
    ('',
    '$nome',
    '$cognome',
    '$datas');";

    nel db la segna come 0000-00-00

  10. #10
    codice:
    $dati = "INSERT INTO utente VALUES 
             ('', 
             '$nome', 
             '$cognome', 
             CURDATE() 
             )";

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.