Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    495

    effettuare controllo sull'ora inserita

    Ciao!
    ho un form nel quale inserisco l'orario (che č di tipo time). Quando con il post richiamo il dato inserito devo controllare che l'orario sia scritto correttamente ad esempio

    09:30

    e non

    9.30

    mi sapete aiutare per favore?Grazie!

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    codice:
    if(preg_match('/^([\d]{1,2}):([\d]{1,2})$/', $_POST['ora'])) é
      preg_match_all('/([\d]{1,2}):([\d]{1,2})/', $_POST['ora'], $matches);
    
      if(($matches[1][0] >= 0 && $matches[1][0] <= 23)  && ($matches[1][0] >= 0 && $matches[1][0] <= 59) {   
         echo "ORA ESATTA!";
      } 
    }
    salvo errori stupidi di sintassi questo controllo dovrebbe andare, valuta prima di tutto se hai scritto un massimo di 2 caratteri numerici per le ore e per i minuti separati dai 2 punti.

    Dopodichč verifica che le ore siano comprese tra 0 e 23 e i minuti tra 0 e 59.

    Ciao

    edit.

    Il forum mette la faccina al posto di : (
    (qui ci ho messo uno spazio per farti capire, ma non ci deve essere nel codice).

  3. #3
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    a questo punto non ti conviene fare cosi'

    Codice PHP:


    $tempo 
    split":" $_POST['ora'] ) ;
    $time "00:00";

    if( 
    count($tempo)==)
    {
        
    $tempo[0] = floor($tempo[0]);
        
    $tempo[1] = floor($tempo[1]);

        
    // controllo e riformatto ora
        
    $ore "00";
        if( 
    $tempo[0]>&& $tempo[0]<24  )
            
    $ore $tempo<10 "0".$tempo[0] : $tempo[0];

        
    $minuti ="00";
        if( 
    $tempo[1]>&& $tempo[1]<60 )
            
    $minuti $tempo[1]<10 "0".$tempo[1] : $tempo[1] ;

        
    $time $ore.":".$minuti;


    E' un sol come che ti controlla anche che i valore di re e minuti siano corretti.

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.