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

Discussione: Controllo date [php]

  1. #1

    Controllo date [php]

    Ciao a tutti. Volevo chiedervi una cosa semplice semplice, o almeno credo.. Ho fatto salvare dagli utenti del mio sito le loro date di nascita in un database mysql in un campo di tipo date. La cosa che volevo sapere è questa: c'è un modo per far si che nell'index del mio sito compaia un messaggio di auguri all'utente perchè un giorno è il suo comoleanno?? Sapreste darmi un codice da cui poter prendere spunto?? GRASSIE!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    443
    <?php

    $data_odierna = date("Y-m-d");

    //inserisci qui il recordset per recuperare i dati del utente

    if($recordset->Fields('campo_anno_di_nascita_utente') == $data_odierna) echo {"Buon compleanno !"}

    ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2005
    Messaggi
    8
    avviso: colui che ti sta rispondendo è un neofita del php (sono un niubbone)

    codice:
    <?
    if(mktime("0", "0", "0", mese , giorno)==mktime("0","0","0")) echo "tanti auguri";
    ?>
    nn so se così sia sufficiente per te ma praticamente controlla se il mese e il giorno di compleanno sono uguali al giorno corrente

    mi par fin troppo facile

  4. #4
    Il problema è che sulla data di nascita c'è anche l'anno di nascita. Dovrei cercare di togliere l'anno di nascita dalla data per poi confrontare giorno - mese di oggi con giorno - mese salvato nel database...

  5. #5
    Usare unix timestamp per le date di nascita non e' molto indicato.

    Se hai il dato in un database puoi tranquillamente fare tutto con una query.
    codice:
    SELECT *, YEAR(now()) - YEAR(data_nascita) as eta
    FROM TABELLA
    WHERE MONTH(now()) = MONTH(data_nascita)
    AND DAYOFMONTH(now()) = DAYOFMONTH(data_nascita)

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

  6. #6
    Ti ringrazione piero.mac, ma io avevo pensato ad una cosa del genere:

    $data_odierna = date("Y-m-d");
    $query = "SELECT user, data_di_nascita FROM utenti";
    $result = mysql_query($query, $myconn) or die("Errore...");
    $numrows = mysql_num_rows($result);
    //se il database non è vuoto cerco le date
    if ($numrows!=0){
    //Realizzo un ciclo for che si ripete per il numero di occorrenze trovate
    for($x=0; $x<numrows; $x++){
    //Recupero il contenuto di ogni record rovato
    $resrow = mysql_fetch_row($result);
    $compleanno_utente[$x] = $resrow[0];
    $compleanno_data[$x] = $resrow[1];
    }
    for ($i=0; $i<$numrows; $i++) {
    if (compleanno_data[$x]==$data_odierna) {
    echo "<h2>Buon compleanno $compleanno_utente </h2>";
    }
    }

    E' realizzabile un codice del genere o dovrei modificare qualcosa?

  7. #7
    http://it2.php.net/manual/it/function.checkdate.php

    se non hai i dati nel database e quindi non puoi usare il metodo di piero usa questa

  8. #8
    Originariamente inviato da bubu77
    http://it2.php.net/manual/it/function.checkdate.php

    se non hai i dati nel database e quindi non puoi usare il metodo di piero usa questa
    :master: :master:

    SELECT user, data_di_nascita FROM utenti"; ?????

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

  9. #9
    Originariamente inviato da Nick083
    Ti ringrazione piero.mac, ma io avevo pensato ad una cosa del genere:
    E' realizzabile un codice del genere o dovrei modificare qualcosa?
    Si puo' fare di tutto e anche di piu'. sicuramente tu fai di piu'.




    ps: se puoi dovresti mettere il codice tra tag [ code] o [php ]
    per agevolarne la lettura.

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

  10. #10
    No, i dati ce li ho proprio in un campo della tabella utenti del mio database. user è il campo con il nome dell'utente e data_di_nascita è proprio il dato in formato date dell'utente. Comunque è fattibile una cosa del genere? Gli anni delle date da confrontare però saranno sempre e comunque diverse. Bisogna cercare di togliere l'anno dalla data salvata nel campo data_di_nascita del database..

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.