Bonjour à vous,
Je suis entrain de coder un module de Newsletter pour un site que je fais, mais je rencontre un problème qui commence à m'énerver.
Je n'arrive pas à faire que l'email soit envoyés à plusieurs membres en même temps ! Soit il n'y a que le premier qui le recoit, soit personne...
Voici une partie de mon code :
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 $sujet=$_POST['sujet']; $dest=$_POST['dest']; $message="la blague de toto"; // Envoyer aux admins : if ($dest=="admin") { $sql=mysql_query("SELECT mail FROM membres WHERE niveau=2"); while ($data=mysql_fetch_object($sql)) { if ($data->mail!="") @$destinataire.=$data->mail.", "; } } // On vire le ', ' final pour éviter les bugs ( je sais c pas super mais sa fonctionne ) if (preg_match("!,!",$destinataire)) { $dest2=substr($destinataire, 0, -2); } $entete = 'Reply-to: '.$_SESSION['sess_mail']."\r\n"// Adresse utilisée pour la réponse au mail .'From: "'.$_SESSION['sess_pseudo'].'"<'.$_SESSION['sess_mail'].">\r\n"// Adresse de l'expéditeur (format : Nom <adresse_mail>) .'X-Sender: '.$_SESSION['sess_mail']."\r\n"// Adresse réelle de l'expéditeur .'Date: '.date('l j F Y, G:i')."\r\n"// Date de l'envoie de l'E-Mail .'Content-Type: text/html; charset=iso-8859-1'."\r\n"//Contenu du mail (texte, html...) .'Content-Transfer-Encoding: 7bit'."\r\n"; if (mail($dest2,$sujet,$message,$entete)) { $contenu="<br><br><center>Les emails ont été envoyés avec succés !<br><br> ".$dest2; } else { $contenu="<br><br><center>Une erreur est intervenu durant l'envoie du mail"; }Je pense que le problème vient du faire que je met toutes les adresses dans la première valeur de mail(). Il doit y avoir un moyen de le mettre dans les entêtes mais je ne retrouve plus cette fonction.Le format de $dest2 à la fin du script est : xxxxxxxxxxx.fx@gmail.com, xxxxxxxxxx.cs@hotmail.com et dans ce cas seul le premier mail reçois le message
Merci de m'aider !
ps : Script hébergé chez 1et1
Partager