Test de validité d'email

Contenu du snippet

Test la validité d'un email avec la function ValidEmail.

Source / Exemple :


Function ValidEmail(sEMail)
    
    Dim sInvalidChars
    Dim bTemp
    Dim i
    Dim sTemp
    
    ' Caratères interdits
    sInvalidChars = Chr(33) & Chr(34) & Chr(35) & Chr(36) & Chr(37) & Chr(38) & Chr(39) & Chr(40) & Chr(41) & Chr(42) & Chr(43) & Chr(44) & Chr(47) & Chr(58) & Chr(59) & Chr(60) & Chr(61) & Chr(62) & Chr(63) & Chr(91) & Chr(92) & Chr(93) & Chr(94) & Chr(96) & Chr(123) & Chr(124) & Chr(125) & Chr(126) & Chr(127)
    sInvalidChars = sInvalidChars & Chr(128) & Chr(129) & Chr(130) & Chr(131) & Chr(132) & Chr(133) & Chr(134) & Chr(135) & Chr(136) & Chr(137) & Chr(138) & Chr(139) & Chr(140) & Chr(141) & Chr(142) & Chr(143) & Chr(144) & Chr(145) & Chr(146) & Chr(147) & Chr(148) & Chr(149) & Chr(150) & Chr(151) & Chr(152) & Chr(153) & Chr(154) & Chr(155)
    sInvalidChars = sInvalidChars & Chr(156) & Chr(157) & Chr(158) & Chr(159) & Chr(160) & Chr(161) & Chr(162) & Chr(163) & Chr(164) & Chr(165) & Chr(166) & Chr(167) & Chr(168) & Chr(169) & Chr(170) & Chr(171) & Chr(172) & Chr(173) & Chr(174) & Chr(175) & Chr(176) & Chr(177) & Chr(178) & Chr(179) & Chr(180) & Chr(181) & Chr(182) & Chr(183)
    sInvalidChars = sInvalidChars & Chr(184) & Chr(185) & Chr(186) & Chr(187) & Chr(188) & Chr(189) & Chr(190) & Chr(191) & Chr(192) & Chr(193) & Chr(194) & Chr(195) & Chr(196) & Chr(197) & Chr(198) & Chr(199) & Chr(200) & Chr(201) & Chr(202) & Chr(203) & Chr(204) & Chr(205) & Chr(206) & Chr(207) & Chr(208) & Chr(209) & Chr(210) & Chr(211)
    sInvalidChars = sInvalidChars & Chr(212) & Chr(213) & Chr(214) & Chr(215) & Chr(216) & Chr(217) & Chr(218) & Chr(219) & Chr(220) & Chr(221) & Chr(222) & Chr(223) & Chr(224) & Chr(225) & Chr(226) & Chr(227) & Chr(228) & Chr(229) & Chr(230) & Chr(231) & Chr(232) & Chr(233) & Chr(234) & Chr(235) & Chr(236) & Chr(237) & Chr(238) & Chr(239)
    sInvalidChars = sInvalidChars & Chr(240) & Chr(241) & Chr(242) & Chr(243) & Chr(244) & Chr(245) & Chr(246) & Chr(247) & Chr(248) & Chr(249) & Chr(250) & Chr(251) & Chr(252) & Chr(253) & Chr(254) & Chr(255)
    
    '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
    
    '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érifier la présence de (.@)
    bTemp = bTemp Or InStr(sEMail, ".@") > 0
    
    'Vérifier la présence de (@.)
    bTemp = bTemp Or InStr(sEMail, "@.") > 0
    
    'Vérifier la présence de (..)
    bTemp = bTemp Or InStr(sEMail, "..") > 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
        End If
    Next
    
    ' S'il y a une seule des conditions ci-dessus qui repond true alors l'e-mail est invalide
    ValidEmail = Not bTemp

End Function

if ValidEmail("Votre email")= true then

response.write "Le mail est valide"

else

response.write "Le mail est invalide"

end if

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.

Du même auteur (cs_pacman)