Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente bannato
    Registrato dal
    Feb 2011
    Messaggi
    146

    Verificare se una data e ora è passata

    Ho una stringa:

    testo= "2011-11-25 8:40:20"; //(è proprio un testo, salvato cosi)
    se è passato oppure no...

    come posso fare?

    grazie per l'aiuto

  2. #2
    Utente bannato
    Registrato dal
    Feb 2011
    Messaggi
    146
    $prima_data = strtotime('12/03/2006 16:12');
    $oggi = strtotime(date('Y-m-d H:i'));

    if ($prima_data < $oggi) {

  3. #3
    Originariamente inviato da epiclavori
    $prima_data = strtotime('12/03/2006 16:12');
    $oggi = strtotime(date('Y-m-d H:i'));

    if ($prima_data < $oggi) {
    Hai provato a fare?

    codice:
    $prima_data = strtotime('12/03/2006 16:12');
    $oggi = date('Y-m-d H:i', $prima_data);
    echo '12/03/2006 16:12 = ' . $oggi ."
    ";

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

  4. #4
    Utente bannato
    Registrato dal
    Feb 2011
    Messaggi
    146
    Allora in generale io estraggo una riga da un file in cui c'è la data numero 1


    //arire il file ora.txt
    //nel testo c'è scritto "2011-26-02 19:52:01"

    $filename = "ora.txt";
    $handle = fopen($filename, "r");
    $prima_data = fread($handle, filesize($filename));
    fclose($handle);

    $oggi = strtotime(date('Y-m-d H:i:s'));

    if ($prima_data < $oggi) {
    echo 'la data risulta antecedente ad oggi';

    } else {
    echo 'la data risulta futura ad oggi';
    }

    però non mi funziona anche se metto in ora.txt per dirti una frase "frase ciao"
    mi esce cmq echo 'la data risulta antecedente ad oggi';

    quindi in teoria sta sbagliato qualcosa penso che non riconosca prima_data come data..
    non saprei

  5. #5
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    ma se metti "frase ciao" che non è una data, risulta necessariamente antecedente ad oggi
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  6. #6
    Guarda bene la data di riferimento che hai citato:

    "2011-26-02 19:52:01"
    anno-giorno-mese poiche e' scontato non possa esistere il mese 26.

    ora guarda questa:

    date('Y-m-d H:i:s')
    anno - mese - giorno

    a parte il fatto che:
    $oggi = strtotime(date('Y-m-d H:i:s'));
    corrisponde (forse) ad un piu' semplice time();

    dico forse perche strototime (stringa to time) cerca di creare un timestamp da una data testuale "in formato inglese". e non mi pare che 'Y-m-d H:i:s' lo sia. Quarda nel link i vari formati.
    http://it.php.net/manual/en/datetime.formats.date.php

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

  7. #7
    Utente bannato
    Registrato dal
    Feb 2011
    Messaggi
    146
    //arire il file ora.txt
    $filename = "ora.txt";
    $handle = fopen($filename, "r");
    $prima_data = fread($handle, filesize($filename));
    fclose($handle);


    $oggi = strtotime(date('Y-m-d H:i:s'));

    if ($prima_data < $oggi) {

    echo 'la data risulta antecedente ad oggi' . $data_pubblicazione;

    } else {

    echo 'la data risulta futura ad oggi';
    }

    non va anche cosi

  8. #8
    Utente bannato
    Registrato dal
    Feb 2011
    Messaggi
    146
    con la data giusta
    2011-02-26 19:52:01

  9. #9
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    cosa stampa la variabile $prima_data?
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  10. #10
    Originariamente inviato da epiclavori
    con la data giusta
    2011-02-26 19:52:01
    Quella NON E' una data nel formato inglese, ma in formato ANSI.

    deve diventare cosi':

    codice:
    $prima_data = strtotime('2/26/2011 16:52');  // mese/giorno/anno 
    
    if($prima_data < time()) {
       echo " la prima data e' minore
    ";
       } else  {  echo " la prima data e' uguale o maggiore
    ";  }

    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.