Tester la validité d'une e-mail


Contenu du snippet

Cette fonction n'est pas de moi mais je sais plus d'ou il vient donc désolé pour le copyright...

Source / Exemple :


<%
Function IsValidEmail(sEMail)

    Dim sInvalidChars
    Dim bTemp
    Dim i
    Dim sTemp

    ' Caratères interdits
    sInvalidChars = "!#$%^&*()=+{}[]|\;:'/?>,< "

    ' Rechercher qu'il y a au moins un '@'
    bTemp = InStr(sEMail, "@") <= 0

    ' Rechercher qu'il y a au moins un '.'
    bTemp = bTemp Or InStr(sEMail, ".") <= 0

    ' et vérifions que la taille est plus grande que 6 caractères (a@a.ca)
    bTemp = bTemp Or Len(sEMail) < 6

    ' Vérifier qu'il y a qu'n seul '@'
     i = InStr(sEMail, "@")

     sTemp = Mid(sEMail, i + 1)

    bTemp = bTemp Or InStr(sTemp, "@") > 0

    ' Vérifier qu'il y un '.' après le '@'
    bTemp = bTemp Or InStr(sTemp, ".") = 0

    ' Vérifier la présence de (")
    bTemp = bTemp Or InStr(sEMail, Chr(34)) > 0

    ' Vérifié s'il y a des caractères interdits
    For i = 1 To Len(sEMail)
        If InStr(sInvalidChars, Mid(sEMail, i, 1)) > 0 Then _
            bTemp = True
    Next

    ' S'il y a une seule des conditions ci-dessus qui repond true alors l'e-mail est invalide
    IsValidEmail = Not bTemp

End Function
%>

<%=IsValidEmail("toto@toto.com")%><br>
ceci devrait retourner True

<%=IsValidEmail("toto.com")%><br>
ceci devrait retourner false

Conclusion :


Très pratique lorsque que vous voulez éviter que quelqu'un ne rentre une mauvaise adresse.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.