IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[PEAR][Mail] Envoi de newsletter avec PEAR_Mail


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut [PEAR][Mail] Envoi de newsletter avec PEAR_Mail
    bonjour,
    Mon hebergeur limitant l'envoi de mail, j'ai décidé d'utiliser PEAR:MAIL pour l'envoi de mail.
    Je ne connaissais pas et voici le script que j'utilise, que j'ai récupérer sur le net, c'est juste poru comprendre le fonctionnement, pas la suite, chaque email sera personnalisé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?php
    ini_set("include_path", '/home/ptpex/php:' . ini_get("include_path")  );
     
    require_once "Mail.php";
     
    $host = "smtp.gmail.com:587";
    $username = "xxxx@gmail.com";
    $password = "xxxx";
     
    $smtp = Mail::factory('smtp',
      array ('host' => $host,
        'auth' => true,
        'username' => $username,
        'password' => $password));
     
     
    $from = "xxxx@gmail";
    $to = "Morgan <xxxx@laposte.net>";
    $subject = "Hi!";
    $body = "Hi,\n\nHow are you?";
     
    $headers = array ('From' => $from,
      'To' => $to,
      'Subject' => $subject);
     
    for ($i=1; $i<=100; $i++) {
    $mail = $smtp->send($to, $headers, $body);
     
     
    if (PEAR::isError($mail)) {
      echo("<p>" . $mail->getMessage() . "</p>");
     } else {
      echo("<p>Message successfully sent!</p>");
     }
     
    }
    ?>
    Comme vous le voyé, dans le script j'ai mis un boucle pour tester l'envoi de 100 emails.
    Durant le Test eu 84 "Message successfully sent" et par contre les email restant j'ai reçu le message :
    "Failed to set sender: xxx@gmail.com [SMTP: Invalid response code received from server (code: 421, response: 4.7.0 Try again later, closing connection. (MAIL) 5sm4192607agc.47)]

    "
    Je pense que c'est parce que la connection s'est fermé, mais je ne suis pas sur.
    Est ce que quelqu'un pourrait m'éclairé?
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Points : 2 853
    Points
    2 853
    Par défaut
    Gmail doit sûrement limiter les envoi pour empêcher le spam.

    Sinon envoyé un mail ca prend du temps, donc fait gaffe à ne pas dépasse le temps d'exécution autorisé par PHP pour ton script.

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/04/2008, 18h14
  2. [Mail] Envoie news HTML avec images
    Par matt44 dans le forum Langage
    Réponses: 3
    Dernier message: 15/03/2007, 15h23
  3. [Mail] envoi d'email avec php à l'aide de blat
    Par lahlousimo dans le forum Langage
    Réponses: 3
    Dernier message: 28/02/2007, 11h30
  4. [Mail] Envoie de newsletter en masse, et pause dans l'envoi
    Par ChriGoLioNaDor dans le forum Langage
    Réponses: 1
    Dernier message: 10/02/2007, 16h23
  5. [Mail] envoi newsletter
    Par jarod71 dans le forum Langage
    Réponses: 3
    Dernier message: 22/11/2005, 10h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo