|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Membre éprouvé
![]() Date d'inscription: mai 2002
Messages: 435
|
Merci à Anil PAssi Legerement modifié Code :
CREATE OR REPLACE FUNCTION check_email(Mon_Email IN Varchar2) RETURN Varchar2 IS l_dot_pos NUMBER; l_at_pos NUMBER; l_str_length NUMBER; Begin l_dot_pos := instr(Mon_Email ,'.'); l_at_pos := instr(Mon_Email ,'@'); l_str_length := length(Mon_Email); IF ((l_dot_pos = 0) OR (l_at_pos = 0) OR (l_dot_pos = l_at_pos + 1) OR (l_str_length < 4) OR (l_at_pos = 1) OR (l_at_pos = l_str_length) OR (l_dot_pos = l_str_length)) Then RETURN 'KO'; End IF; IF instr(substr(Mon_Email ,l_at_pos) ,'.') = 0 Then RETURN 'KO'; End IF; RETURN 'OK'; END check_email;
__________________
Signé : Capitaine Jean-Luc Picard Dernière modification par argoet ; 28/08/2008 à 11h29. |
|
|
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Date d'inscription: juillet 2003
Messages: 2 489
|
Mouais.. mais forcemment, on va te trouver des cas qui ne marchent pas..
quand j'ai vu ça : l_dot_pos = l_at_pos + 1, j'ai vu une faille Citation:
Je pense que le mieux c'est de tester les choses suivantes : 1 seul @ Taille à gauche du @ > 0 Taille à droite du @ > 0 A droite du @ : 1 seul . avec au moins 1 caractère à droite et à gauche.
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
|
|
|
|
![]() |
||
Controler la validité d'un email
|
||
| Outils de la discussion | |
|
|