begin process at 2010 02 10 07:47:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

E-Mail / Messagerie

 > VERIFICATION EN TEMP REEL DES ADRESSE MAIL LA VRAI!

VERIFICATION EN TEMP REEL DES ADRESSE MAIL LA VRAI!


 Information sur la source

Note :
7,1 / 10 - par 10 personnes
7,10 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :E-Mail / Messagerie Classé sous :verification, adresse, mail Niveau :Expert Date de création :05/05/2004 Date de mise à jour :05/05/2004 01:30:52 Vu :23 502

Auteur : ceced

Ecrire un message privé
Commentaire sur cette source (14)
Ajouter un commentaire et/ou une note

 Description

bsr,

voici comment verifier une adresse mail, valide tous simplement en se connectant sur le port 25 par telnet.


Sur mon script y a plusieur choix possible, ici je fais saisir, le service smtp, l'adresse mail, et le fournisseur.(page enter_POP.php)

Personelement, fini les ereg, pour la verification d'un @ ou @eee.fr ici on passe a la version superieur lol certe. Chacun choisi son choix.



Source

  • // CODE PAGE DE SAISI DU FORMULAIRE enter_POP.php
  • <html>
  • <head>
  • <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  • <title>Document sans titre</title>
  • </head>
  • <body>
  • <p align="center"><strong>PROGRAMME PERMETTANT DE VERIFIER UNE ADRESSE MAIL EXISTANTE SUR UN SERVEUR POP </strong></p>
  • <p align="center">&nbsp;</p>
  • <p>&nbsp;</p>
  • <form name="form1" method="post" action="telnetemailverif.php">
  • <p>
  • fournisseur: Ex: wanadoo.fr
  • <input type="text" name="fournisseur">
  • </p>
  • <p>smtp: ex: smtp.wanadoo.fr
  • <input type="text" name="smtp"></p>
  • <p> mail :ex: adresse@wanadoo.fr
  • <input type="text" name="mail"> </p>
  • <p>
  • <input type="submit" name="Submit" value="valider">
  • </p>
  • </form>
  • <strong>Auteur: ceced </strong>
  • </body>
  • </html>
  • // FIN DU FORMULAIRE
  • // CODE PAGE telnetemailverif.php
  • <?php
  • //CLASS SMTP send
  • class funavecSMTP{
  • var $fp;
  • function send($data){
  • echo nl2br($data)."<br>\n";
  • fputs($this->fp, $data."\r\n");
  • $this->recv();
  • }
  • /*FONTION PERMETTANT DE RECUPER LES REPONSE DU SERVEUR POUR ECRIR EN BLEU QUE C'EST OK au cas d'echec de commande ou adresse non valide donc reponse de telnet est: 512 on ecrit en ROUGE*/
  • function recv(){
  • $response=fgets($this->fp, 512);
  • list ($errno, $errmsg) = split (" ", $response);
  • if ($errno<500){
  • echo "<font color=\"blue\">$response</font>\n<br>";
  • }else{
  • echo "<font color=\"red\">$response</font>\n<br>";
  • exit;
  • }
  • }
  • // FONCTION OPEN smtp
  • function open($smtpserver,$ti=2){
  • $this->fp = fsockopen($smtpserver, 25, $errno, $errstr, $ti);
  • if (!$this->fp){
  • echo "<b>echec d'ouverture $smtpserver</b><br><font color=\"red\">$errstr ($errno).</font><hr>\n";
  • exit;
  • }
  • $this->recv();
  • }
  • function close(){
  • fclose($this->fp);
  • }
  • }
  • $fun = new funavecSMTP;
  • $mySMTPserver = "$smtp";
  • $terminator=".";
  • $fun->open($mySMTPserver);
  • $fun->send("HELO $fournisseur");
  • $fun->send("VRFY $mail");
  • /*POUR EXECUTER D OTRE COMMANDE IL SUFFIT DE RAJOUTER ICI SE QUE VOUS VOULEZ EXECUTER
  • exemple : $fun->send("help");// help indique toute les commande possible de telnet por 25
  • */
  • $fun->send("QUIT");
  • $fun->close();
  • ?>
// CODE PAGE DE SAISI DU FORMULAIRE enter_POP.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
</head>

<body>
<p align="center"><strong>PROGRAMME PERMETTANT DE VERIFIER UNE ADRESSE MAIL EXISTANTE SUR UN SERVEUR POP </strong></p>
<p align="center">&nbsp;</p>
<p>&nbsp;</p>
<form name="form1" method="post" action="telnetemailverif.php">
  <p>
   fournisseur: Ex: wanadoo.fr
     <input type="text" name="fournisseur">
</p>
  <p>smtp: ex: smtp.wanadoo.fr
    <input type="text" name="smtp"></p>
  <p> mail :ex: adresse@wanadoo.fr
    <input type="text" name="mail"> </p>
  <p>
    <input type="submit" name="Submit" value="valider">
  </p>
</form>
<strong>Auteur: ceced </strong>
</body>
</html>
// FIN DU FORMULAIRE


// CODE PAGE telnetemailverif.php

<?php

//CLASS SMTP send
class funavecSMTP{

var $fp;

function send($data){
    echo nl2br($data)."<br>\n";
    fputs($this->fp, $data."\r\n");
    $this->recv();
}

/*FONTION PERMETTANT DE RECUPER LES REPONSE DU SERVEUR POUR ECRIR EN BLEU QUE C'EST OK au cas d'echec de commande ou adresse non valide donc reponse de telnet est: 512 on ecrit en ROUGE*/
function recv(){
    $response=fgets($this->fp, 512);
    list ($errno, $errmsg) = split (" ", $response);
    if ($errno<500){
    echo "<font color=\"blue\">$response</font>\n<br>";
    }else{
    echo "<font color=\"red\">$response</font>\n<br>";
    exit;
    }   
}
// FONCTION OPEN smtp
function open($smtpserver,$ti=2){
    $this->fp = fsockopen($smtpserver, 25, $errno, $errstr, $ti);
    if (!$this->fp){
    echo "<b>echec d'ouverture $smtpserver</b><br><font color=\"red\">$errstr ($errno).</font><hr>\n";
    exit;
    } 
    $this->recv();
}

function close(){
    fclose($this->fp);
}
}

$fun = new funavecSMTP;


$mySMTPserver    =   "$smtp";

$terminator=".";



$fun->open($mySMTPserver);
$fun->send("HELO $fournisseur");
$fun->send("VRFY $mail");

/*POUR EXECUTER D OTRE COMMANDE IL SUFFIT DE RAJOUTER ICI SE QUE VOUS VOULEZ EXECUTER 
exemple : $fun->send("help");// help indique toute les commande possible de telnet por 25
*/
$fun->send("QUIT");
$fun->close();
?>

 Conclusion

Cette source et libre d'utilisation

Merci de me faire par de vos commentaires
Cordialement
Enjoy man if u have a question cedricben@hotmail.com


 Sources du même auteur

RECUPERATION DES IMAGES D'UN DOSSIER EXTERIEUR
REDIMENSIONNER TOUTE VOS IMAGES A LA VOLER A PARTIR D'UN DOS...
GENERER A LA VOLER UN FICHIER XML VIA UNE TABLE SQL + PHP
EXPLOI FAILLE INCLUDE & UPLOAD
SCANER VOS PORT ET AFFICHE LES PORT OUVERT + LES NOMS DES TR...

 Sources de la même categorie

Source avec Zip SCREENMAIL-SOLUTION DE CONTACT POUR WEBMASTERS par bnrj
Source avec Zip FORMULAIRE EMAIL AVEC PIECE JOINTE REPRIS DE LITTLEBUBU par cfndiaye
Source avec Zip Source avec une capture MESSAGERIE INTERNE AVEC FICHIER TEXTE par polly19
Source avec Zip FORMULAIRE EVOIE ET PLUS par florentinul
FILTRE POUR NEWSLETTERS GMAIL par durealex

 Sources en rapport avec celle ci

Source avec Zip SCREENMAIL-SOLUTION DE CONTACT POUR WEBMASTERS par bnrj
Source avec Zip Source avec une capture MESSAGERIE INTERNE AVEC FICHIER TEXTE par polly19
CLASSE DE VÉRIFICATION DE DONNÉES par swaenboutu
FORMULAIRE PHP + VERIFICATION + ENVOI DU MAIL par cosmoswarezone1
ANTI SPAM (BROUILLAGE D'ADRESSE MAIL) par coucou747

Commentaires et avis

Commentaire de Mechanicman le 05/05/2004 13:37:18

Vraiment pas mal ton script...C'est mieux que de vérifier l'authenticité d'une email en vérifiant la syntaxe de celle-ci..

9/10
Par contre, pour $smtpserver, je suppose qu'il faut mettre un serveur SMTP au hasard...? (enfin un qui existe quoi)

Commentaire de ceced le 05/05/2004 13:55:15

$smtp =$smtpserveur :=) donc oui fo mettre un service smtp, le plus courant comme exemple smtp.wanadoo.fr :)
et oui qui existe... si non failled opening :)

normal ..

MERCI pour ta note et merci pour t commentaire :)

ceced :p

Commentaire de rbarriere le 06/05/2004 09:04:48

Bonjour,

Je viens de tester votre script, mais il semble que la commande VRFY ne soit pas toujours autorisée sur les serveurs. En retour j'obtiens ce message 502 VRFY command is disabled .

@+

Cordialement

Commentaire de ceced le 06/05/2004 09:56:14

effectivement, si le serveur et configurer de cette maniere rbarriere, tu es dans la kaka pour verifié, mais tous les providers de france, comme:

club-internet,
free.fr,
wanadoo.fr
tele2.fr,
tiscali.fr

ont la commande endable :)

certe, d'otre à testé...
biensure, pas la peine de verifié chez microsoft ou bien encore le fbi lol allez @+

Commentaire de rbarriere le 06/05/2004 10:17:18

Je ne suis pas d'accord avec toi pour wanadoo. Le serveru inhibe le VRFY.
Par contre free c'est ok

Commentaire de aze555666 le 18/06/2004 17:28:35

je te met 7/10
bravo, ton code est vraiment bien, mais il a un gros défaut: c'est qu'il demande l'adresse smtp de l'internaute, qui ne la connait pas forcément. De plus, sur des mails comme caramail, on ne peut pas savoir l'adresse smtp, puisqu'ils se vantent d'être un Webmail, avec plus de securité, et qu'on ne peut pas s'en servir via qqch comme outlock

Commentaire de ceced le 18/06/2004 17:57:03

bin le but de ce code et de verifié l'adresse existante, mais c'est vrai que si le provider, interdit la cmd verfy, via telnet por 25 service smtp bin ca ne marchera pas logique, mais bon ca reste tous de meme une vrai verification d'adresse mail existante.
Pour cara
S'ils ont un webmail c'est qu'ils ont un service smtp.

Commentaire de ceced le 18/06/2004 17:57:30

Et un service comme cara obligé qu'ils ont un service smtp.


Commentaire de freepol le 21/06/2004 08:58:34

Bonjour,
tu utilises le port 25 pour vérifier les mails. Très bien. Mais il doit y avoir des cas où ce pour ne répond qu'en interne (sécurité paranoïde, d'accord, mais ça existe). Il y a une autre solution : établir le dialogue POP sur le port 110. Par ex : telnet pop.free.fr 110
le serveur répond qq chose du genre +Ok. ou xxx message où xxx est un nombre décrit par le RFC qivabien.
on envoie : user toto\n
attente +Ok
on envoie : pass pass\n
et si l'on n'a pas d'erreur l'adresse est bonne.
L'inconvénient clair est d'avoir à demander le MDP..Mais il y a des situations où c'est possible.
J'eqça

Commentaire de monphpcs le 29/06/2004 02:48:10

le port smtp est le bon choix.
la commande VERIFY pas toujours exploitable... Le top est de trouver les MX correspondants à l'adresse email, pas compliqué.
Il faut faire une tentative d'envoi d'email, c'est la meilleure méthode bien qu'elle ne soit pas fiable à 100 % car certains serveurs acceptent l'email même si l'adresse existe pas....
Donc, la solution est de vérifier ce que le serveur renvoie avec une adr bidon et ensuite on sait si l'adresse existe, n'existe pas ou si elle est indéterminée ( cas du serveur qui accepte tous les emails sans renvoyer d'erreur ).

Commentaire de josh666 le 09/07/2004 20:01:57

Pour le problème de la demande su smtp ... la solution la plsu simple quoi un peu longue serait de construire une BD avec les SMTP relié au fournisseur .... UNe banque des plsu connu a travers le monde genre..

Pour le fournisseur et bien... il est possible de récupérer a la fin de ladresse email ..non ??

Donnez moi des news...

Commentaire de monphpcs le 09/07/2004 20:57:46

oui c'est bon.
pour la bd, juste 2 fichiers txt qui contiennent les noms de domaines fiables et les non fiables.
L'intérét est qd on vérifie des centaines ou miliers d'adresses email.
Par exemple : aol.com est pas fiable pour dire si une adr est valide ou non. Donc inutile de tester les adr emails. Juste besoin de tester 1 fois qu'aol est pas fiable en testant une adr bidon. Ensuite, les centaines d'emails pour aol ne seront pas testés, mais le résultat sera : INDETERMINE.
Alors que pour les domaines fiables on fera qu'un test de fiabilité et on vérifiera toutes les adr emails. Dans ce cas, les résultats seront :
Adresse existante ou Adresse invalide.

Simple

Commentaire de mlinux le 30/01/2007 11:23:42

Bonjour,
Je viens de tester votre script qui me parait très prometteur.

Seulement je n'arrive pas à analyser correctement les résultats :

Cas adresse correcte :
----------------------
220 8.mail-out.xxx.net ESMTP
HELO cegetel.net
250 8.mail-out.xxx.net
VRFY adresse@cegetel.net
252 send some mail, i'll try my best
QUIT
221 8.mail-out.xxx.net

Cas adresse erronnée :
----------------------
220 8.mail-out.xxx.net ESMTP
HELO cegetel.net
250 8.mail-out.xxx.net
VRFY adresse_aaa@cegetel.net
252 send some mail, i'll try my best
QUIT
221 8.mail-out.xxx.net

Merci pour votre aide.

Michel FOUILLADE

Commentaire de djosos le 15/01/2010 21:12:57

Bonjour,
Le port 25 ne doit pas être bloqué côté serveur.
A+

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

SVP : Aide pour mon premier formulaire. [ par davggy ] Salut à tous.Je suis tout tout débutant et très intrigué par les capacités du PHP.Mon premier souhait est de récupérer par mail les informations fourn Formulaire envoyé par mail [ par zetrueneo ] Salut a tous!je cherche à créer un formulaire qui sera envoyé par mail a une adresse fixé :j ai creer le formulaire ds une page html :&lt;form action= pb de mail avec X400 (php) [ par guicore ] SalutJe dois envoyer un mail à une personne qui ne possède pas d'adresse smtp (type perssonne@personne.fr) mais qui a une adresse X400 (c=..;..) comme fonction mail() [ par fcapdevi ] j'utilise la fonction mail() dans un site hébergé par laposte.net mais apparemment celle ci ne fonctionne pas quand le destinataire a une adresse un p Problème avec mon formulaire [ par elzoc ] J'ai encore mon problème.Explication : vraiment zarbe les receptions mail via mon formulaire sont alléatoires comme si j'avais une fonction "un mail e fonction mail() [ par rakarth00 ] Je ne sais pas si cela est possible, mais j'aimerais savoir s'il y a un moyen de sp&#233;cifi&#233; l'adresse de l'envoyeur avec la fonction "mail()" Pseudo + e-mail dans le SQL [ par FilipeZA ] Bonjour,je voudrais savoir comment faire pour unir un pseudo avec son adresse e-mail une fois saisie dans la base SQL via un formulaire sur une page P fonction mail() [ par dave21 ] Salut tous le monde,J'ai besoin d'aide sur la fonction mail(), je suis d&#233;butant en php, alors svp soyez sympa, expliquez moi en d&#233;tail, merc Socket : Adresse d'un serveur [ par Leneuf8000 ] Bonjour, voil&#224;, j'ai trouv&#233; des sripts permettant l'envoi de mail et qui utilise la fonction fsockopen, or comme j'ai un probl&#232;me pour recupérer l'adresse mail d'une personne dans un formulaire [ par Alpha911 ] avec ceci est ce que cela affichera l'ip de la personne dans un champ texte de formulaire ?&lt;input type="text" name="ip" size="20"&gt;&lt;value=. $R


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,014 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales