Vi sono vari modi per controllare i dati che riceviamo da un form html: se stiamo utilizzando PHP possiamo servirci di alcune funzioni messe a disposizione dal motore PHP ( come ad esempio empty() ), ma possiamo anche sceglire un’altra strada, Javascript.

Il controllo di campi numeri e testuali è abbastanza banale, e in rete di trovano migliaia di esempi: ciò che non si trova molto spesso è il controllo delle mail, e soprattutto il controllo da effettuare per verificare la validità di una mail.

Supponiamo di avere un form fatto in questo modo:

<form name=”emailForm” method=”post” action=”">
<p>Inserisci il tuo nome:<br>
<input name=”name” type=”text”>
<br>
<span>Inserisci il tuo indirizzo e-mail:</span><br>
<input name=”email” type=”text”>
<br>

ecc.
<input name=”Submit” type=”submit” value=”Invia” onclick=”return validateForm();”>
</form>

Questo form ha diversi campi, a noi interessa il campo email e il campo Submit : quest’ultimo, una volta cliccato, chiama una funzione Javascript, validateForm(); che si occupa appunto di validare il form. Come abbiamo detto precedentemente, concentriamoci sul controllo e sulla validazione della mail. Le righe di codice da inserire nella funzione di cui sopra per raggiungere il notro obiettivo sono:

/*
Se il valore del campo email del form emailForm è vuoto, salviamo nella variabile errmsg, oltre a possibili errori per controlli precedenti, un messaggio che specifichi la mancanza della mail
*/
if ( !document.emailForm.email.value ) {
errmsg += ‘\nDovete immettere la MAIL’;

} else {

/*
Se il campo mail è stato effettivamente completato, controlliamo però la validità di tale campo: per fare questo utilizziamo le espressioni regolari e alcune funzioni native di Javascript. Quindi creiamo un oggetto “espressione regolare” che salviamo nella varibile “espressione“, recuperiamo il valore della mail inviato tramite il form e lo salviamo nella variabile stringa ; infine facciamo il confronto tra questi due valori.
Se stringa contiente un valore che non rispetta le regole imposte dall’espressione regolare, allora inseriamo un messaggio appropriato, altrimenti non si verificaheranno problemi e la computazione potra proseguire tranquillamente.
*/
var espressione = new RegExp(“^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+[\.]([a-z0-9-]+)*([a-z]{2,3})$”);
var stringa = document.emailForm.email.value;
if ( !espressione.test(stringa) )
errmsg += ‘\nDovete immettere una MAIL VALIDA’;
}

Le espressioni regolari vengono usate particolarmente per manipolare stringhe, e quindi in linguaggi come Perl, che bene si adattano alla gestione e configurazioni di alcune caratteristiche particolari dei server.
L’argomento delle espressioni regolari è molto vasto, e lo rimandiamo ad ulteriori chiarimenti futuri: per chi volesse iniziare ad approfondire questo affascinante studio può dare un’occhiata a questo indirizzo qui.

Vota Articolo: