Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28
  1. #1
    Utente di HTML.it L'avatar di sgnam
    Registrato dal
    Dec 2005
    Messaggi
    19

    Confronto tra due date >= 10anni

    Ciao a tutti!
    il mio problema è calcolare la differenza tra due date e verificare se la loro differenza è maggiore o uguale a 10 anni.

    ho provato in questo modo senza grande successo:


    $data_modulo= mktime(data presa da DB memorizzata in YYYY-mm-dd);
    $10annifa = mktime (0,0,0,date("m"), date("d"), date("Y")-10);
    $data_odierna= mktime(0,0,0, date("m"), date("d"), date("Y"));

    if (($data_odierna - $data_modulo) <= $10annifa ){
    print "sono passati 10 anni";
    }
    else {
    print "non sono ancora trascorsi dieci anni";}

    qualcuno mi può aiutare a risolvere il problema!?!?

    :master:

  2. #2
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Ce qualcosa che mi sfugge, data odierna - data modulo produce una differenza che sara' sempre minore di $10annifa , quindi nn funzionera' mai

    prova

    if ($data_modulo <= $10annifa ){

    print "sono passati 10 anni";
    }
    else {
    print "non sono ancora trascorsi dieci anni";}

  3. #3
    Utente di HTML.it L'avatar di sgnam
    Registrato dal
    Dec 2005
    Messaggi
    19
    anche così non funziona...

    può essere un problema tra il formato della data che ho memorizzato nel db e quello che utilizzo come $10annifa?

    $data_modulo è nel formato: date(0000-00-00), ma poi la converto con mktime...

  4. #4
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    No va bene, fai una cosa stampa tutte le date e postale cosi' vediamo

  5. #5
    Utente di HTML.it L'avatar di sgnam
    Registrato dal
    Dec 2005
    Messaggi
    19
    ecco cosa mi stampa:

    data "10annifa": 853714800
    data "modulo": 1176382599 (corrisponde al 1982-10-10)

  6. #6
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Ho provato ma mi dava errore non puoi usare un numero come inizio variabile $10annifa, non so come fa a funzionarti, cmq 853714800 corrisponde a 10 anni fa, mentre 10/10 /1982 dovrebbe essere 403052400, quindi inserisci o estrai i dati dal db in maniera errata

  7. #7
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,035
    scusate se mi intrometto, ma in php esiste una funzione per aggiungere/sottrarre due date? e per aggiungere /sottrarre un periodo ben preciso ad una data?

  8. #8
    Utente di HTML.it L'avatar di sgnam
    Registrato dal
    Dec 2005
    Messaggi
    19
    il nome della variabile "$10annifa" in realtà è "$annifa", l'ho chiamato così solo per renderlo più chiaro nel messaggio.

    quindi l'errore è per i dati nel db...
    quindi dovrei estrarre la data dal db nel formato giorno/mese/anno e non anno/mese/giorno e poi convertirla con mktime!?

  9. #9
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Non ha importanza come la estrai ma poi come te la giostri.

  10. #10
    Utente di HTML.it L'avatar di zakros
    Registrato dal
    Oct 2000
    Messaggi
    509
    Originariamente inviato da Lak3d
    scusate se mi intrometto, ma in php esiste una funzione per aggiungere/sottrarre due date? e per aggiungere /sottrarre un periodo ben preciso ad una data?
    Nelle funzioni delle date nn l ho trovato http://it.php.net/manual/it/function.strtotime.php.

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.