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.
Modifié par artos17 (13 Jan 2017 - 15:26)
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++;
Modifié par artos17 (13 Jan 2017 - 15:26)