Section courante

A propos

Section administrative du site

La validation des courriels est un des problèmes les plus complexe à mettre en oeuvre lorsqu'on envoie un formulaire. Et pour cause, il faut tenir compte des règles suivantes :

A l'aide du code source ASP 3.0 suivant, vous trouverez la réponse que vous souhaitez :

  1. <%
  2. Function IsEmail(Email)  
  3.     If((Email = null) OR (Len(Email) = 0)) Then
  4.           IsEmail = False
  5.           Exit Function
  6.      End If
  7.     For I = 1 to Len(Email)
  8.         Select Case Mid(Email,I,1)
  9.            Case " ", "\t", "\n", "\r", "(", ")", ":", ",", "/", "'", """", _
  10.                 "~", "`", "!", "#", "$", "%", "^", "&", "*", "+", "=", "[", "]", "{", _
  11.                "}", "|", "\", "?", "<", ">":
  12.                      IsEmail = False
  13.                           Exit Function
  14.         End Select
  15.     Next
  16.     
  17.      ArobasFound = 0
  18.     For I = 2 To Len(Email)
  19.           If Mid(Email,I,1) = "@" Then
  20.           ArobasFound = ArobasFound + 1
  21.           If ArobasFound = 1 Then AfterArobas = I
  22.           End If
  23.     Next
  24.     If ArobasFound <> 1 Then
  25.          IsEmail = False
  26.           Exit Function
  27.      End If
  28.     AfterArobas = AfterArobas + 2
  29.     Do While ((AfterArobas < Len(Email)) AND (Mid(Email,AfterArobas,1) <> ".")) 
  30.           AfterArobas = AfterArobas + 1
  31.      Loop
  32.     If((AfterArobas >= Len(Email) - 1) OR (Mid(Email,AfterArobas,1) <> ".")) Then
  33.           IsEmail = False
  34.      Else 
  35.           IsEmail = True
  36.      End If
  37. End Function
  38.  
  39. Response.write "Courriel «abc» est valide: " & CStr(IsEmail("abc")) & "<BR>"
  40. Response.write "Courriel «@» est valide: " & CStr(IsEmail("@")) & "<BR>"
  41. Response.write "Courriel «@abc.abc» est valide: " & CStr(IsEmail("@abc.abc")) & "<BR>"
  42. Response.write "Courriel «abc@gladir.com» est valide: " & CStr(IsEmail("abc@gladir.com")) & "<BR>"
  43. Response.write "Courriel «abc@@gladir.com» est valide: " & CStr(IsEmail("abc@@gladir.com")) & "<BR>"
  44. Response.write "Courriel «abc@gl][adir.com» est valide: " & CStr(IsEmail("abc@gl][adir.com")) & "<BR>"
  45. %>

on obtiendra le résultat suivant :

Courriel «abc» est valide: false
Courriel «@» est valide: false
Courriel «@abc.abc» est valide: false
Courriel «abc@gladir.com» est valide: true
Courriel «abc@@gladir.com» est valide: false
Courriel «abc@gl][adir.com» est valide: false


Dernière mise à jour : Mercredi, le 20 août 2014