Validazione e filtro dell’input di un utente. La nuova filter_var()

Oggi mi sono trovato di fronte al classico form di registrazione di un utente con relativo form di login.
La mia prima preoccupazione è stata ovviamente la validazione e il filtraggio dell’input dell’utente.

Ero già pronto a prendermi le classiche espressioni regolari per controllare email, input di testo, date ecc… Ma proprio oggi leggevo un interessantissimo articolo su mattiasgeniar.be, un buon blog di uno sviluppatore, dove veniva presentata un’innovativa soluzione, introdotta con PHP5, per validare e filtrare l’input degli utenti: filter_var().

Ammetto di essere rimasto affascianato dalla semplicità con cui ora posso validare e filtrare i dati.
Ecco alcuni esempi (Attenzione: filter_var() è presente SOLO da PHP5 in poi).

Validazione di una mail:

<?php
   if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) echo 'Email non valida';
?>

Strip di tutto ciò che non è una stringa (pensiamo ad esempio ad un commento nel nostro blog):

<?php
   $commento = "<h1>Ciao a tutti, il mio <a href='http://www.google.it'>blog è qui</a></h1>";
   $commento = filter_var($commento, FILTER_SANITIZE_STRING);
   // Restituisce Ciao a tutti, il mio blog è qui
?>

E questi sono solo due semplicissimi esempi che solitamente necessitano di strip_tags, espressioni regolari ecc…
Onestamente trovo questo filter_var una vera manna!

Vi lascio il link di tutti i possibili parametri (sono veramente molti) per la filter_var:
http://mattiasgeniar.be/2009/02/07/input-validation-using-filter_var-over-regular-expressions/

friimaind

Mi chiamo Massimiliano e sono uno sviluppatore web. Ho aperto questo blog principalmente come agenda dove tenere traccia di tutte le mie passioni :)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *