Fonction mail() dans un while
jacko
-
lezao Messages postés 505 Statut Membre -
lezao Messages postés 505 Statut Membre -
Bonjour,
j'ai un probleme dans ma fonction.
je vais chercher dans une table les emails et je les récupere avec un while dans lequel j'envoi mon mail.
mon probleme est que la derniere adresse email recoi le mail en xxx fois le nombre d email...
comment faire ? voici mon code :
while($r = mysql_fetch_array($req1))
{
//ici ma fonction mail avec comme destinataire : $r[email]
}
merci
j'ai un probleme dans ma fonction.
je vais chercher dans une table les emails et je les récupere avec un while dans lequel j'envoi mon mail.
mon probleme est que la derniere adresse email recoi le mail en xxx fois le nombre d email...
comment faire ? voici mon code :
while($r = mysql_fetch_array($req1))
{
//ici ma fonction mail avec comme destinataire : $r[email]
}
merci
A voir également:
- Fonction mail() dans un while
- Fonction si et - Guide
- Windows live mail - Télécharger - Mail
- Comment télécharger un mail - Guide
- Bash do while ✓ - Forum Shell
- Majuscule dans adresse mail ✓ - Forum Mail
2 réponses
Perso je te conseillerais plutôt d'utiliser les entêtes SMTP, avec le champ "copies carbones cachées" (Bcc), ça devrait être moins lourd car tu n'appelles qu'une fois la fonction mail().
Exemple :
Exemple :
<?php
$to = 'webmaster@example.com';
$subject = 'Sujet de l\'email';
$message = 'Le blabla de ton email';
$headers = 'From: webmaster@example.com'."\r\n"
. 'Reply-To: webmaster@example.com'."\r\n"
. 'X-Mailer: PHP/' . phpversion();
$headers .= 'Bcc: ';
while(/* La boucle */) {
$headers .= $email.',';
}
$headers = rtrim($headers, ',')."\r\n";
mail($to,$subject,$message,$headers);
?>
Moi je fais comme ça pour eviter que ce soit lourd, j'envois qu'une seul fois et je cumule les mails avec un ; de separation
$sql = "SELECT * FROM emails ";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req)) {
$destinataire = $data["email"].";".$destinataire ;
}
$email = "test@hotmail.com" ;
mail("$destinataire",
"NEWSLETTER",
"[NEWSLETTER]
Sujet : $sujetnewsletter
LE MESSAGE : $textenewsletter ",
"From: $email\nReply-To: $email");
lezao : quand tu sais pas , tu me demandes je sais tout....non je déconne...presque tout.
$sql = "SELECT * FROM emails ";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req)) {
$destinataire = $data["email"].";".$destinataire ;
}
$email = "test@hotmail.com" ;
mail("$destinataire",
"NEWSLETTER",
"[NEWSLETTER]
Sujet : $sujetnewsletter
LE MESSAGE : $textenewsletter ",
"From: $email\nReply-To: $email");
lezao : quand tu sais pas , tu me demandes je sais tout....non je déconne...presque tout.