[PHP] Pinguer une adresse mail

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


mr_go
WRInaute accro
WRInaute accro
 
Messages: 1944
Inscription: Mer Sep 21, 2005 16:02

[PHP] Pinguer une adresse mail

Message le Mer Mar 29, 2006 15:35

Bonjour,

afin de me prémunir au maximum contre le spam, je me demandais si il existait une fonction ou une classe permettant d'avoir un code de retour du serveur SMTP (de même que pour le http qui génére un code 200) pour une adresse mail.

exemple :

- mavraiadresse@example.com retourne un code (equivalent 200 pour les serveurs http)
- fausseadresse@example.com retourne un code différent (equivalent 404)

Bmerki ;)

Edit :

petite précision pour l'exemple, je souhaite bien évidemment effectuer ce type d'action
return (fonction_ping_email($email));

ch_lensois
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 169
Inscription: Mer Oct 27, 2004 0:12

Message le Mer Mar 29, 2006 15:46

tu veux verifier si l'email est réélement valable ?
Il existe une fonction php qui test si un domaine existe.
Te reste juste a predre tout ce qui a derrier le @ et à lui concatener le www.
Puis a vérifier cette adresse.
Par contre désole, je connais pas le nom de la fonction.


mr_go
WRInaute accro
WRInaute accro
 
Messages: 1944
Inscription: Mer Sep 21, 2005 16:02

Message le Mer Mar 29, 2006 15:49

Ah ok, c'est déjà une bonne indication.
Merci je vais fouiller un peu dans la doc PHP.

Bien évidemment si quelqu'un connait une méthode permettant de connaitre la validité "intégrale" de l'email, je suis preneur...
;)


e-kiwi
Modérateur
Modérateur
 
Messages: 13818
Inscription: Mar Déc 23, 2003 9:04

Message le Mer Mar 29, 2006 15:57

afin d'éviter le spam, tu peux, a chaque envoi d'un formulaire de ton site", envoyer un message à confirmer sur l'email de l'expéditeur


mr_go
WRInaute accro
WRInaute accro
 
Messages: 1944
Inscription: Mer Sep 21, 2005 16:02

Message le Mer Mar 29, 2006 16:12

J'y ai pensé et je l'utilise.

Le problème est que dans le cas qui m'interresse à savoir le module "envoyer cette url à vos contact", cela risque d'être fort génant pour l'internaute.


spout
WRInaute accro
WRInaute accro
 
Messages: 1258
Inscription: Mer Mai 14, 2003 11:05

Message le Mer Mar 29, 2006 16:13

j'utilise cette fonction:
Code: Tout sélectionner
<?php
function validateEmail($email) {
   if(   (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) ||
      (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email)) ){
      
      $host = explode('@', $email);
      if(checkdnsrr($host[1].'.', 'MX') ) return true;
      if(checkdnsrr($host[1].'.', 'A') ) return true;
      if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
   }
   return false;
}
?>


la fonction checkdnsrr() n'existant pas dans windows:
Code: Tout sélectionner
<?php
/*checkdnsrr() pour windows*/
if (!function_exists('checkdnsrr')) {
   function checkdnsrr($host, $type = '') {
      if(!empty($host)) {
         if($type == '') $type = "MX";
         @exec("nslookup -type=$type $host", $output);
         while(list($k, $line) = each($output)) {
            if(eregi("^$host", $line)) return true;
         }
         return false;
      }
   }
}
?>


Enjoy ;)


absoluteweb
WRInaute impliqué
WRInaute impliqué
 
Messages: 474
Inscription: Ven Nov 22, 2002 16:02

Message le Mer Mar 29, 2006 20:08

Code: Tout sélectionner
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
Pourquoi retourner true si le domaine à un A NAME ou un CNAME mais pas de MX ?

Nicolas.

spijoelx
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 249
Inscription: Ven Fév 06, 2004 20:04

Message le Mer Mar 29, 2006 20:15

normalement, c'est la requete VRFY à envoyer au serveur mail pour savoir si le compte est existant ou pas. mais cette commande est désactivable, et d'ailleurs souvent désactivé sur tous les serveurs mails bien configurés.

iD.NicKy
Nouveau WRInaute
 
Messages: 23
Inscription: Dim Aoû 28, 2005 20:56

Message le Mer Avr 12, 2006 14:40

et donc une solution envisageable pour ce problème ?
si pour tester une adresse mail, on est obligé d'envoyer un mail.. c'est un peu génant :D


ultrajoe
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 216
Inscription: Ven Avr 04, 2003 8:55

Message le Mer Avr 12, 2006 15:14

iD.NicKy a écrit:et donc une solution envisageable pour ce problème ?
si pour tester une adresse mail, on est obligé d'envoyer un mail.. c'est un peu génant :D


Oui mais c'est la seule solution valable... Tous les FAI désactivent cette option afin de prévenir du spam justement !


f_trt
WRInaute passionné
WRInaute passionné
 
Messages: 781
Inscription: Sam Sep 17, 2005 22:36

Message le Mer Avr 12, 2006 17:28

spijoelx a écrit:normalement, c'est la requete VRFY à envoyer au serveur mail pour savoir si le compte est existant ou pas. mais cette commande est désactivable, et d'ailleurs souvent désactivé sur tous les serveurs mails bien configurés.


C'est pire il me semble que beaucoup de serveur sont configurés pour répondre tout est ok au demande de vérifs reçues

A+

shrom
WRInaute passionné
WRInaute passionné
 
Messages: 865
Inscription: Lun Juil 05, 2004 22:37

Message le Mer Avr 12, 2006 17:29

spijoelx a écrit:normalement, c'est la requete VRFY à envoyer au serveur mail pour savoir si le compte est existant ou pas. mais cette commande est désactivable, et d'ailleurs souvent désactivé sur tous les serveurs mails bien configurés.


Voir les serveur configurés pour accepter tous les mails ( cf la config d'Exchange chez Oléane par exemple ) et qui ramènent ensuite un message pour dire que l'adresse n'existe pas.

Ou les catch-all qui accepteront aussi tous les mails.


dorian53
WRInaute accro
WRInaute accro
 
Messages: 1898
Inscription: Dim Avr 10, 2005 16:56

Message le Sam Aoû 26, 2006 1:20

Up ça m'intéresse !

Je cherche la même fonction :)


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3311
Inscription: Mar Nov 16, 2004 18:27

Message le Sam Aoû 26, 2006 8:29


nicolas34500
Nouveau WRInaute
 
Messages: 35
Inscription: Ven Juin 02, 2006 7:46

Message le Dim Aoû 27, 2006 20:18

Les liens de KOogar ont l'air intéressants, sinon on peut juste envoyer un petit mail qui dit "ceci est juste un mail pour vérifier" et on voit si on n'a pas un "mail dilivery permanently failed to the following recipients" dans les 3 secondes.

P.S. KOogar j'adooooore ta photo ^^

[PHP] Pinguer une adresse mail

Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Gmail Notifier

  • La classe C de l'adresse IP
    Cet outil vous permet de vérifier si plusieurs sites sont hébergés sur la même classe C (adresse IP du serveur).
  • Transformer des textes non cliquables en liens
    Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités