Logo UGIdotNET

Validazione con RegularExpressionValidator

Chi non ha usato i RegularExpressionValidator in ASP.NET ? Sono comodissimi, così come sono comodissimi i suggerimenti che ci vengono messi a disposizione.

Ma stiamo attenti !!! Immaginiamo di avere una TextBox che deve accettare un'email. Aggiungiamo il suo validatore e scegliamo fra quelli proposti "Internet e-mail address". La nostra validation expression sottoposta sarà quindi:

\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

Bene, ora ci aspettiamo che la nostra TextBox possa accettare solo email ben formattate. Niente di più falso! Provate a scrivere mario.rossi@mail.com<script>alter('Ciao');</script> e lui risponderà tutto ok.

La risposta è semplice, la validation expression è sbagliata. In pratica manca dei caratteri di apertura (^) e chiusura ($) del testo da validare, che farebbe divenire la stringa come

^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

Lo stesso discorso si pone sulle altre stringhe 'suggerite'.

Autore: Pierre Greborio
Data: 02 ottobre 2006
Ultimo aggiornamento: 02 ottobre 2006
Categorie: 

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185