Visualizzazione dei risultati da 1 a 9 su 9

Discussione: confronto date

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

    confronto date

    ciao,

    ho questo script che dovrebbe stampare un messaggio in un determinato periodo di tempo ma non funziona, stampa sempre prova1..

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

    if (($data > "07-01-2008") AND ($data <= "15-02-2008")) {
    echo"prova1";
    }

    else if (($data > "16-02-2008") AND ($data <= "24-03-2008")) {
    echo" prova2";
    }

    invece dovrebbe stampare prova2
    Qualcuno sa idicarmi dove sbaglio?

    Grazie

  2. #2
    Utilizza http://www.php.net/mktime per creare delle date valide per confronti.

    Il confronto cosi' come lo fai ora e' basato sulle stringhe. il 01-01-2008 e' minore del 10-01-2000.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    668
    grazie,

    ho provato cosi ma non funzeca..

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

    if (($data > mktime(0,0,0,07,01,2008)) AND ($data <= "15-02-2008")) {
    echo"prova1";
    }

    else if (($data > mktime(0,0,0,16,02,2008)) AND ($data <= "24-03-2008")) {
    echo" prova2";
    }

    cosa sbaglio?

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    668
    si è una stringa..devo usare anche per lei mktime?

    if ((mktime($data) > mktime(0,0,0,07,01,2008)) AND ($data <= "15-02-2008")) {
    echo"prova1";
    }

    else if ((mktime($data) > mktime(0,0,0,16,02,2008)) AND ($data <= "24-03-2008")) {
    echo" prova2";
    }

    cosi non funziona..

  6. #6
    Ti suggerisco di iniziare leggendo il manuale ufficiale:

    http://www.php.net/mktime

    E' inutile provare ad inserire codice a caso se non conosci i parametri delle funzioni che utilizzi.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    668
    grazie ma appunto perchè ho letto ho scritto quel codice..io ho capito che si usa cosi..


  8. #8
    Originariamente inviato da moribura
    if ((mktime($data) > mktime(0,0,0,07,01,2008)) AND ($data <= "15-02-2008"))
    Ciao, non conosco la funzione mktime, ma credo proprio che vada utilizzata anche al posto del tuo $data <= "15-02-2008".
    Se poi sto dicendo una cavoltata assurda correggetemi, ma così facendo $data non è più una stringa ma appunto un formato data confrontabile con altri.
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  9. #9
    appunto perchè ho letto ho scritto quel codice..io ho capito che si usa cosi..
    Dove hai letto nel manuale che si usa cosi'?

    http://www.php.net/mktime accetta come 6 parametri obbligatori ed 1 opzionale, nel tuo codice hai inserito un solo parametro, è impossibile che si usi cosi'.

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.