Validé adresse mail php ???

Résolu/Fermé
nickleus Messages postés 374 Date d'inscription dimanche 20 janvier 2008 Statut Membre Dernière intervention 18 juin 2011 - 8 févr. 2008 à 11:30
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 - 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
A voir également:

7 réponses

Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
8 févr. 2008 à 12:52
Voila une fonction qui vérifie l'existence de l'email :
https://www.tienhuis.nl/files/email_verify_source.php
7
nickleus Messages postés 374 Date d'inscription dimanche 20 janvier 2008 Statut Membre Dernière intervention 18 juin 2011 5
8 févr. 2008 à 12:09
non en faite je veux voir si elle existe la fonction précédente je l'ai déjà faite
1
OrionS Messages postés 55 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 22 septembre 2008 39
8 févr. 2008 à 11:38
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";
}
?>
0
OrionS Messages postés 55 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 22 septembre 2008 39
8 févr. 2008 à 12:14
Envoi un mail avec un lien de confirmation...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
8 févr. 2008 à 12:17
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.
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
8 févr. 2008 à 12:21
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.

https://www.php.net/getmxrr
0
nickleus Messages postés 374 Date d'inscription dimanche 20 janvier 2008 Statut Membre Dernière intervention 18 juin 2011 5
8 févr. 2008 à 12:32
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 ???
0