Astuces php
Accueil
  News 
 Scripts 
 Bouquins 
 Newsletter 
  Emplois 
 Annuaire 
 Forum 
 
Offres d'emplois
Intégrateur web
Société spécialisée dans la Vente par Internet recrute : Intégrateur Web en CDI Débutants Passionnés. Connaissances requises : - maîtrise d...
 
 C'est ici
 
Avez vous lu ?
Site Web Marchand
Avez vous lu ? -> Site Web Marchand : Destiné à tous ceux qui souhaitent créer une boutique complète en ligne, cet ouvrage développe la méthodologie pour créer un site de e-commerce. Dans une première partie, il explique comment créer l’architecture du site, des 10 questions à se poser au choix du système de paiement. Puis il guide l...
 
 Commander
 
 Chapitres - e-mail
PHP 5 Astuces d'experts -> e-mail -> Envoyez un mail à plusieurs destinataires Envoyez un mail à plusieurs destinataires
PHP 5 Astuces d'experts -> e-mail -> Envoyez un mail avec une pièce jointe Envoyez un mail avec une pièce jointe
PHP 5 Astuces d'experts -> e-mail -> Envoyer un mail au format HTML Envoyer un mail au format HTML
PHP 5 Astuces d'experts -> e-mail -> Un fichier externe pour déterminer la liste des destinataires Un fichier externe pour déterminer la liste des destinataires
PHP 5 Astuces d'experts -> e-mail -> Une classe pour contrôler les emails Une classe pour contrôler les emails
PHP 5 Astuces d'experts -> e-mail -> Une classe pour envoyer des emails Une classe pour envoyer des emails
PHP 5 Astuces d'experts -> e-mail -> Gérer les comptes Imap Gérer les comptes Imap
 Une classe pour contrôler les emails
<?
require_once("classe_verification_email.php");
$cl_email = new verification_email;
$email 'test@test.com';
$ok $cl_email->teste_email($email);
if (
$ok) echo "adresse $email correcte<br>";
  else echo 
"adresse $email incorrecte<br>";
?>
La classe complète se présente ainsi :
<?php
// --- classe de vérification 
des adresses email

class verification_email {
  var 
$system_OS "win";//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 (
getmxrr($this->hostName)) 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;
    }
  }
}
?>
 Rechercher
Tapez un mot ou une phrase clé
 

 Téléchargement
Téléchargez les sources de l'ouvrage
PHP 5 solutions et composants open-source
Téléchargez les sources de l'ouvrage  -> PHP 5 solutions et composants open-source : Boostez et améliorez vos sites PHP avec des composants et extensions !

Voici enfin l'ouvrage pour améliorer votre site sans tout réécrire. Pourquoi réinventer la roue puisqu'il existe une multitude de composants indépendants à intégrer à votre site ou même des extensions au langage PHP qui peu...
 


Derniers tickets
  • bandeaux publicita... ()
  • Mail avec liste de... ()
  • pb install wamp ()
  • Bouton recalculer ()
  •  

    copyright astuces-php.info - Plan du site - Mylinea.org : l'annuaire des annuaires - échange de liens - Faites du fric