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 PowerBASIC suivant, vous trouverez la réponse que vous souhaitez:

Essayer maintenant !
  1. DEF FNBool2Str$(value) 
  2.     IF value=0 THEN FNBool2Str$="false" ELSE FNBool2Str$="true" 
  3. END DEF 
  4.  
  5. DEF FNIsEmail(Email$) 
  6.     AfterArobas=0 
  7.     IF Len(Email$) = 0 THEN FNIsEmail=0:EXIT DEF 
  8.     FOR I = 1 TO Len(Email$) 
  9.        SELECT CASE MID$(Email$,I,1) 
  10.           CASE " ",CHR$(9),CHR$(13),CHR$(10),"(",")",":",",","/","\",CHR$(34),"~","`","!","#","$","%","^","&","*","+","=","[","]","{","}","|","\","?","<",">": 
  11.               FNIsEmail=0:EXIT DEF 
  12.        END SELECT 
  13.     NEXT 
  14.     ArobasFound = 0 
  15.     FOR I = 2 TO Len(Email$) 
  16.        IF MID$(Email$,I,1) = "@" THEN 
  17.            INCR ArobasFound 
  18.            IF ArobasFound = 1 THEN AfterArobas = I 
  19.        END IF 
  20.     NEXT 
  21.     IF ArobasFound<>1 THEN FNIsEmail=0:EXIT DEF 
  22.     INCR AfterArobas,2 
  23.     WHILE ((AfterArobas <= Len(Email$)) AND (MID$(Email$,AfterArobas,1) <> ".")) 
  24.        INCR AfterArobas 
  25.     WEND 
  26.     IF((AfterArobas >= Len(Email$)) OR (MID$(Email$,AfterArobas,1) <> "."))THEN FNIsEmail=0:EXIT DEF 
  27.     FNIsEmail=1 
  28. END DEF 
  29.  
  30. STDOUT "Courriel «abc» est valide: "+FNBool2Str$(FNIsEmail("abc")) 
  31. STDOUT "Courriel «@» est valide: "+FNBool2Str$(FNIsEmail("@")) 
  32. STDOUT "Courriel «@abc.abc» est valide: "+FNBool2Str$(FNIsEmail("@abc.abc")) 
  33. STDOUT "Courriel «abc@gladir.com» est valide: "+FNBool2Str$(FNIsEmail("abc@gladir.com")) 
  34. STDOUT "Courriel «abc@@gladir.com» est valide: "+FNBool2Str$(FNIsEmail("abc@@gladir.com")) 
  35. STDOUT "Courriel «abc@gl][adir.com» est valide: "+FNBool2Str$(FNIsEmail("abc@gl][adir.com"))

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 : Samedi, le 23 janvier 2016