Vérifier le format d'une adresse mail
Le bout de code qui va suivre ne permet pas d'être totalement certain que l'adresse email introduite est valide, mais il permet de vérifier qu'elle aie un format correct, c'est à dire qu'elle soit de la forme quelquechose@domaine.ext.
Cela empêche donc de mettre des adresses emails sans le @, ou bien sans extension par exemple.
#!/usr/bin/perl
use CGI qw(:standard);
$q = new CGI;
$adresse = $q->param("email");
print $q->header();
if (&check_email($adresse) == 0)
{
print <<FIN;
L'adresse email n'a pas un format valide.
FIN
}
sub check_email
{ my $email = $_[0];
if ($email =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/ || $email !~ /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/)
{ #ko
return 0;
}
else
{ # ok
return 1;
}
}
print <<FIN2;
<form>
<type="input" name="email">
<type="submit" name="go">
<form>
|
|