picture picture
août 18, 2018 PHP 0 Commentaire

Validation des e-mails avec PHP

validation des e-mails avec PHPPourquoi une validation des e-mails avec PHP ? Parce que la plupart des formulaires de contact incluent la saisie d’un e-mail, de manière à pouvoir répondre à la demande. Et la plupart des internautes détestent les spams… Un certain nombre de petits malins ont donc tendance à insérer une fausse adresse, voire ‘xxxxx’ pour shunter l’obligation de saisie. Sans compter les fautes de frappe (que l’on peut limiter avec une double saisie de cet e-mail)…

Pour écarter les pièges les plus grossiers, il est donc nécessaire de contrôler au minimum la présence d’une arobase @, ainsi que d’une extension du nom de domaine (.com, .fr, etc.)

Avec le langage PHP, pendant longtemps il a été nécessaire d’avoir recours soit aux ésotériques expressions régulières, qui cassaient la variable saisie par l’internaute pour en contrôler la validité (arobase et extension), soit à des fonctions de type explode() qui cassaient les chaînes pour les valider ensuite.

Bref, du long, du lourd…

Il existe pourtant une petite fonction PHP qui fait cela très bien et 2 fois plus rapidement : filter_var(), grâce à son attribut FILTER_VALIDATE_EMAIL. Cette fonction retourne FALSE si la validation échoue.

Pour tester la validité de la variable $_POST[’email’], voici un exemple de code qui renvoie à la page de saisie inscription.php en cas d’erreur de format :

if(filter_var($_POST['email'], FILTER_VALIDATE_EMAIL) == '') {
  header("location: inscription.php?err=email");
  exit;
}
									

Cette méthode n’est pas infaillible (les domaines non latin ne sont pas validés, par ex.), mais rapide et efficace pour la plupart des besoins.

No Responses to “Validation des e-mails avec PHP”

Commentaire

Name

Mail (ne sera pas publié)

Website

Laisser ces deux champs tels quels :
:D :-) :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: