[Php] Validation d'email
Par JcDenis le mardi 9 septembre 2008, 03:36 - Programmation - Lien permanent
Tout programmeur en herbe a déja écrit un formulaire d'inscription ou l'utilisateur doit entrer son e-mail. Et on est tous partie en cacahete pour savoir comment valider la forme d'une adresse e-mail! Et bien non, nul besoin d'expression régulière!
Il suffit de taper dans votre moteur de recherche favorie "validation d'email en php" pour voir défiler des pages et des pages d'expressions régulières (REGEXP) toutes plus compliquées les une que les autres... alors qu'aujourd'hui c'est si simple!
En effet nul besoin d'expression régulière il suffit d'une simple ligne de code:
<?php if (filter_var($_POST'email',FILTER_VALIDATE_EMAIL)) { echo "email valide"; } ?>
Hé oui! Voila une petite explication:
Php dans sa version >= 5.2.0 et PECL filter:0.11.0 ont une fonction bien pratique qui se nomme filter_var() qui retourne vos données filtrées suivant un filtre spécifique ou alors retourne FALSE si le filtre echoue.
Pour avoir une liste des filtres disponibles sur votre serveur la fonction filter_list() vous en dira plus:
<?php print_r(filter_list()); ?>
Quelques filtres sont interressant mais celui de l'email est pour moi le meilleur exemple à vous donner!
Commentaires
Bonjour,
Moi, je trouve que filter_var est pas suffisamment puissant un nospam@nospam.org passe très bien alors qu'il n'y a pas de MX sur le domaine. C'est pourquoi, je préfère utiliser http://sabisu.fr/checkmail/ à la fois côté client en ajax (comme ça c'est beau
et côté serveur ... on sais jamais si le javascript à été désactivé.