Quando si scrive un’applicazione Web in cui si richiede all’utente il proprio indirizzo email è sempre opportuno verificarne l’esistenza, onde evitare problemi di qualsiasi natura.
Allo scopo ci avvaliamo di un Web Service di Tiscali e vi ci interfacciamo attraverso l’oggetto XMLHTTP ed un semplice script ASP.
Naturalmente lo script funzionerà solo se il server di Tiscali continua a funzionare (potrebbe sempre avere un down e/o un riavvio lento) oppure finchè Tiscali non decida di chiudere il servizio Web in oggetto.
Veniamo alla pratica.
Vediamo lo script ASP che, in funzione di un indirizzo email, restituisce un valore booleano che indica che l’indirizzo email esista o meno:
<%
Function EmailExists(EmailToTest)
Dim Tiscali, XMLHTTP
Tiscali = "http://webservices.tiscali.com/"
Tiscali = Tiscali & "EmailServices.asmx/IsValidEmail"
Tiscali = Tiscali & "?email="
Set XMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
XMLHTTP.Open "GET", Tiscali & EmailToTest, False
XMLHTTP.Send
If InStr(1, CStr(XMLHTTP.ResponseText), "true") > 0 Then
EmailExists = True
Else
EmailExists = False
End If
Set XMLHTTP = Nothing
End Function
%>
Vediamo come utilizzare la funzione nelle nostre applicazioni ASP:
<%
Dim email
email = "email@inesistente.ext"
If EmailExists(email) = False Then
Response.Write "Specificare un indirizzo email esistente!"
Else
Response.Write "OK
"
End If
%>
Il Web Service controlla a priori, naturamente, la validità dell’indirizzo email, con un’espressione regolare, o come esattamente non ci è dato di sapere, ragion per cui possiamo escludere questo tipo di controllo dai nostri script, anche se lo sconsiglio..
Essendo la mail dell’esempio palesemente inesistente, per testare la validità dello script consiglio di specificare il proprio indirizzo email.

La funzione restituisce sempre il valore false qualsiasi indirizzo metta!
Commento di Roberto — 4 marzo 2010 @ 08:40