Fork me on GitHub

Rapport de message :*
 

Re: Contrôleur mail - pré-inscription membre

Titre du sujet : Re: Contrôleur mail - pré-inscription membre
par Solisonia sur 12/10/2007 11:29:47

Citation :

overmysoul a écrit:
j ai ce bout de code qui permet de verifier si le domaine existe vraiement par contre savoir si la boite elle sur le domaine existe pour l instant j ai pas ca en stock
class verification_email 
  var 
$system_OS "linux";//système d'exploitation (win/linux) 
  
var $debug 0;// textes de mise au point 
  
var $check_result;  // résultats 

  
function teste_email($email) { 
    
$email strtolower($email); 
    
// --- vérification de la syntaxe 
    
$ok $this->check_email($email); 
    if (!
$ok) return FALSE
    
// --- decomposition de l'adresse 
    
list($userName$hostName) = split("@"$email); 
    
// --- on teste l'enregistrement MX 
    
if (!$this->checkDNS($hostName)) { 
      
$this->check_result .= "Pas d'enregistrement MX"
      return 
FALSE
    } 
    else { 
      
$this->check_result .= "Enregistrement MX OK"
      return 
TRUE
    } 
  } 

  
// --- vérification de la syntaxe de l'adresse email 
  
function check_email($email) { 
    if (
preg_match('/^[-!#$%&'*+\./0-9=?A-Z^_`{|}~]+@([-0-9A-Z]+.)+([0-9A-Z]){2,4}$/i', $email)) { 
      
$this->check_result .= "Syntaxe OK"; 
      return TRUE; 
    } 
    else { 
      
$this->check_result .= "Erreur de syntaxe"; 
      return FALSE; 
    } 
  } 

  // vérifie si l'enregistrement MX existe pour le domaine 
  function checkDNS(
$hostName) { 
    // --- linux 
    if (
$this->system_OS == "linux") { 
      if (checkdnsrr(
$hostName,"MX")) return TRUE; 
      else return FALSE; 
    } 
    // --- windows 
    else { 
      if(!empty(
$hostName)) { 
        exec("nslookup -type=MX ".
$hostName$result); 
        // vérifie chaque ligne  pour voir si l'une d'entre elles 
        // commence par le nom de domaine 
        // si c'est le cas, la vérification est positive 
        // sinon, c'est qu'il n'y a pas d'enregistrement 
        // MX pour le domaine 
        foreach (
$result as $line) { 
          if(eregi("^".
$hostName,$line)) return true; 
        } 
        return false; 
      } 
      return false; 
    } 
  } 
}



Et ce code on doit l'intégrer ou ?
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

47 Personne(s) en ligne (27 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 47 | Plus ...