Les Allergies
Alimentaires
Posez votre question Signaler

Validé adresse mail php ??? [Résolu]

nickleus 378Messages postés 20 janvier 2008Date d'inscription 18 juin 2011Dernière intervention - Dernière réponse le 8 févr. 2008 à 12:52
Bonjour,
je suis entrain de tester la validité d'une adresse mail mais j'ai cet erreur qui saffiche
Fatal error: Call to undefined function getmxrr() in C:\wamp\www\popoulos\test.php on line 9
voila le script que j'ai trouver sur une site:
<?php
$from = $editFormAction = $_SERVER['PHP_SELF'];
if((isset($_POST["cc"])) && ($_POST["cc"] == "form1")){
function checkEmail($email)
{
list($Username, $Domain) = split("@",$email);
if(getmxrr($Domain, $MXHost)) <-------LIGNE 9
{return TRUE;}
else
{if(fsockopen($Domain, 25, $errno, $errstr, 30))
{return TRUE;}
else{return FALSE;}}
}
$mail = $_POST['mail'];
echo checkEmail($mail);
}
?>
<form name="form1" method="post" action="<?php echo $from ?>">
<input type="text" name="mail" id="mail">
<input type="submit" name="button" id="button" value="Envoyer">
<input name="cc" id="cc" type="hidden" value="form1">
</form>
ou si quelqu'un un bon script je suis ouvert
Lire la suite 

Validé adresse mail php »

7 réponses
Réponse
+6
moins plus
Voila une fonction qui vérifie l'existence de l'email :
http://www.tienhuis.nl/files/email_verify_source.php
Ajouter un commentaire
Réponse
+1
moins plus
bonjour,

Pour valider un mail dans PHP tu dois utiliser une expression régulière :

<?php
$regex = "/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i";
$courriel = "nom@domaine.com";
if (preg_match($regex, $courriel)) {
    echo "L'adresse $courriel est valide";
} else {
    echo "L'adresse $courriel n'est pas valide";
}
?>
Ajouter un commentaire
Réponse
+1
moins plus
non en faite je veux voir si elle existe la fonction précédente je l'ai déjà faite
Ajouter un commentaire
Réponse
+0
moins plus
Envoi un mail avec un lien de confirmation...
Ajouter un commentaire
Réponse
+0
moins plus
Envoi un mail avec un lien de confirmation...

C'est effectivement le seule moyen.

Pour ton erreur, retourne sur le site ou tu as trouvé le script, et vérifie s'il n'y a pas une librairie ou a un module à activer, voire un include à ajouter.
Ajouter un commentaire
Réponse
+0
moins plus
D'après la doc PHP:
'Note: Cette fonction n'est pas disponible sur les machines Windows. Pour la remplacer, essayez la classe » PEAR : » Net_DNS.'
Note: Cette fonction ne doit pas être utilisée à des fin de vérification d'adresses. Seuls les serveurs de mails trouvés dans les enregistrements DNS sont retournés.

C'est à dire que ca ne vérifie que le nom de domaine. Par exemple pour l'adresse 'testance@hotmail.com', ca te renverra que 'hotmail.com' existe, pas l'adresse complète. D'ailleurs elle ne prend même pas le username comme argument.

http://www.php.net/getmxrr
Ajouter un commentaire
Réponse
+0
moins plus
comme la dit OrionS je vais faire un mail de confirmation mais je vais quand meme prendre cette solution pour voir si le nom de domaine existe pour eviter d'avoir de faux nom de domaine ca va restreindre les mec qui mettrent n'improte quoi.
a moisn qu'il n'y ait une autre solution ?????

j'ai lu quesi l'organisme qui repertorie les nom de domaine n'etait pas a jour alors de nom de domaine serait automatiquement rejeter avec le fonction getmxrr. c ca ???
Ajouter un commentaire
Ce document intitulé « validé adresse mail php ??? » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?