Oggi sono in vena di domande.![]()
Finora per validare un form ho utilizzato questo metodo: controllo le variabili una per una inizializzando un messaggio di errore e un contatore degli errori stessi. Ogni volta che viene trovato un errore il messaggio viene aggiunto alla stringa e il contatore di errori viene aggiornato.
Siccome mi rendo conto che come metodo fa abbastanza schifo vi sarei grato se mi spiegaste come faccio a rendere il mio codice di esempio una funzione.
codice:$mesErr = ''; $errori = 0; if (preg_match("#[a-z]{5,10}#i",$_POST['nome'])) $nome = $_POST['nome']; else { $mesErr.='Il nome deve contenere solo lettere (minimo 5 e massimo 10) '; $errori++; } if ($_POST['numero'] >=1 && $_POST['numero'] <= 10) $numero = $_POST['numero']; else { $mesErr.='il numero deve essere tra 1 e 10 '; $errori++; } if (preg_match("#[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}#",$_POST['data'])) $data = $_POST['data']; else{ $mesErr.='non è una data valida '; $errori++; } // Se c'è stato almeno un errore stampo la stringa ed esco dal codice if ($errori != 0) { echo $mesErr; exit; } else { // altrimenti procedo col mio script // qui ovviamente stampo solo a video le mie tre variabili se sono corrette echo $nome.' '.$numero.' '.$data; }

Rispondi quotando