Vérifier si une adresse e-mail est valide et existe réellement

Contenu du snippet

La plus part du temps, on se contente de vérifier si l'adresse contient des caractères devant, un @, des caractères derriere, un point et encore au moins 2 caractères après

Mais les petits malins on vite fait de contourner le systeme en tapant osfsdf@lsdkflsdkf.com

Mais voici un code qui, en plus de vérifier la syntaxe, vérifie auprès d'un serveur, que l'adresse existe belle et bien

Source / Exemple :


<?php
function checkEmail($email) 
{
   if(eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $email)) 
   {
      return FALSE;
   }

   list($Username, $Domain) = split("@",$email);

   if(getmxrr($Domain, $MXHost)) 
   {
      return TRUE;
   }
   else 
   {
      if(fsockopen($Domain, 25, $errno, $errstr, 30)) 
      {
         return TRUE; 
      }
      else 
      {
         return FALSE; 
      }
   }
}
?>

Conclusion :


Pour utiliser cette fonction, il suffit de l'appeler comme ceci

<?php
if(checkEmail(johndoe@example.com) == FALSE)
{
echo "L'adresse E-mail n'est pas valide";
}
else
{
echo "L'adresse E-mail est valide";
}
?>

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.