2011-03-23 2 views
1

Je voudrais suivre les courriels rebondis qui ont été envoyés à partir de mon serveur. J'ai lu quelques trucs et constaté que les courriels rebondis sont stockés dans la boîte aux lettres et peuvent être détectés en lisant les fichiers de boîtes aux lettres directement.Comment puis-je suivre les emails rebondis?

check for bounced mails with php

Maintenant, je voudrais faire une idée comment puis-je lire les fichiers de boîte aux lettres de mon serveur? Ai-je besoin d'exécuter un fichier de script php manuellement après avoir envoyé le courrier pour enregistrer l'e-mail rebondi dans ma base de données? Dois-je analyser le contenu de l'e-mail pour savoir quel e-mail a été renvoyé?

Je cible la substance pour mon serveur de php avec l'accès d'email de bruit.

Répondre

1

Voici comment je connecter au serveur de courrier entrant à one.com

$inbox = imap_open('{imap.one.com:993/imap/ssl/novalidate-cert}INBOX', '[email protected]', 'xxxxxxxx') or die('Cannot connect: ' . print_r(imap_errors(), true)); 

/* grab emails */ 
$emails = imap_search($inbox,'ALL'); 

/* if emails are returned, cycle through each... */ 
if($emails) { 

    /* put the newest emails on top */ 
    rsort($emails); 

    /* for every email... */ 
    foreach($emails as $email_number) { 

     $message = imap_fetchbody($inbox,$email_number,2); 

     $pieces = explode(" ", $message); 

     foreach($pieces as $piece){ 

      $findme = '@'; 
      //$findme2 = '.com'; 

      $pos = strpos($piece, $findme); 

      if ($pos !== false) { 
        echo $piece; 
      } 


     } 

    } 

} 

L'adresse e-mail qui rebondissait est dans le corps du message et je fais écho au navigateur.