Validation des e-mails avec PHP
Pourquoi 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;
}
No Responses to “Validation des e-mails avec PHP”