Pause entre chaque lot d'envoi de liste de diffusion
atisart17
Messages postés2Date d'inscriptionlundi 9 janvier 2017StatutMembreDernière intervention15 janvier 2017
-
Modifié par atisart17 le 13/01/2017 à 15:25
NHenry
Messages postés15151Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention 4 septembre 2024
-
17 janv. 2017 à 22:09
Bonjour,
Je réalise un système d'envoi de liste de diffusion. L'envoi de mail fonctionne. J'aimerais faire une pause de 10 secondes après l'envoi de 200 mails et continuer après. J'ai essayé ceci (code ci-dessous) mais je n'ai pas le résultat espéré.
Je vous remercie.
// requête sql $req = $db->prepare('SELECT email FROM table_client LIMIT 1000'); $req->execute() or die(print_r($req->errorInfo())); $rows = $req->fetchAll(); $i = 0; $j = 0; foreach ($rows as $row[$i]) { if ($j >= 200) { sleep(10); $j = 0; } $j++; $destinataire = $row[$i]['email']; $text_mail = ""; // on démarre le buffer ob_start(); // on lit le fichier newsletter.php include("newsletter.php"); // on récupère la sortie de newsletter.php $text_mail = ob_get_contents(); // on ferme le buffer ob_end_clean(); mail($destinataire, $sujet_mail, $texte_mail, $headers); } $i++;
NHenry
Messages postés15151Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention 4 septembre 2024159 13 janv. 2017 à 18:29
Ce que je te conseillerai pour éviter un timeout de ta page serait plutôt de marquer quelles adresses doivent recevoir le mail.
Ensuite régulièrement, tu appel une page qui génère X mails et les marquent comme envoyés.
De cette manière tu éviter le timeout et tu reste plus modeste sur ta débit d'envoi.
atisart17
Messages postés2Date d'inscriptionlundi 9 janvier 2017StatutMembreDernière intervention15 janvier 2017 15 janv. 2017 à 21:44
Bonjour,
Merci pour cette réponse.
Mon objectif est d'automatiser toutes les tâches sans devoir faire appel à une quelconque page pour exécuter mon script. Et d'ailleurs je ne connaissais les adresses à qui envoyé les mails. Je les choisis parmi des milliers via une requête fonction des critères posés.
Cordialement,
NHenry
Messages postés15151Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention 4 septembre 2024159 17 janv. 2017 à 22:09