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

Langage PHP Discussion :

[Mail] Envoyer des e-mail à une liste de diffusion


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut [Mail] Envoyer des e-mail à une liste de diffusion
    Bonjour tout le monde.
    J'ai une liste de diffusion dans une DB Mysql. J'essaie d'envoyer le message ici
    $msg
    Ce code que j'ai fait met un temps fou pour envoyer seulement à 200 adresses. En plus il n'arrive pas à aller jusqu'au bout. Qui peu m'aider avec un code simple mais clair. D'avance un grand merci

    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
    <?php
    do{
     
    $lemail = $row_result['email'];
    $lenom = $row_result['nom'];
     
    $msg = $salutation." ".$lenom.", \n\n";
    $msg .= $lemessage."\n\n";
    $msg .= $note."\n\n";
     
    mail($lemail, $objet, $msg, $entete);
    } 
    while($row_result = mysql_fetch_assoc($rsReference));
     
    ?>

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Par défaut
    Salut,

    Citation Envoyé par Alexandrebox
    En plus il n'arrive pas à aller jusqu'au bout.
    Est-ce que tu as un message d'erreur affiché?

    Si c'est un problème de timeout, tu dois sélectionner tes mails par lots de p.ex. 50 puis tu fais un rafraichissement de ta page et tu passes aux 50 suivants.

  3. #3
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut
    Merci, mais 200 mails, tu penses que c'est trop?

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Par défaut
    ben je suis pas sûr que ce soit trop pour le timeout mais de toute façon il vaut mieux envoyer par petits lots, comme ça s'il y a un problème tu peux recommencer aux derniers qui n'ont pas été envoyés (tu rajoutes un champ "dernier envoi" à ta table et tu l'updates pour chaque adresse avant le rafraichissement).

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 21
    Par défaut
    Bonjour,
    Ta fonction envoi 200 mails, alors oui c'est normal que ce soit si long, une solution pourrait être d'envoyer un seul mail avec 200 copies cachées:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    $copie_cachee="";
     
    while($row_result = mysql_fetch_assoc($rsReference)){
     
    $lemail = $row_result['email'];
     
    $copie_cachee.=",".$lemail;
    }
     
    $entete .= 'Bcc: '.$copie_cachee."\n";
    Malheureusement, ils ne seront pas personnalisés

    Cordialement.

  6. #6
    Membre éclairé Avatar de Alexandrebox
    Profil pro
    Inscrit en
    Août 2006
    Messages
    635
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 635
    Par défaut
    Merci, mais je me demande si ce n'est pas plutot mon code.
    Je dis ça parce que j'ai fait un test avec seulement 3 adresses. ça a marché mais je trouve le temps un peu long pour envoyer à trois adresses.
    Qu'elqu'un pourra me proposer un code plus adapté?

    D'avance merci

Discussions similaires

  1. [XL-2010] Envoyer en automatique depuis VBA Excel un mail à une liste de diffusion de Thunderbird
    Par RANDOLOISIRS dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/03/2014, 19h41
  2. [OL-2003] Ajouter des membres dans une liste de diffusion
    Par megapacman dans le forum VBA Outlook
    Réponses: 0
    Dernier message: 21/11/2011, 12h53
  3. [PHP 5.2] [Mail] Envoyer un e-mail avec des interruptions
    Par gtraxx dans le forum Langage
    Réponses: 6
    Dernier message: 21/01/2009, 23h49
  4. Réponses: 12
    Dernier message: 24/09/2008, 11h33
  5. [Mail] Extraire des informations d'une liste
    Par Justin_C dans le forum Langage
    Réponses: 2
    Dernier message: 02/02/2007, 11h00

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