Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2011, 15h00   #1
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
Par défaut Newsletter Bcc en double

Bonjour,

ma newsletter ci-dessous envoie le même message aux destinataires deux fois et je ne vois pas pourquoi ?
Merci.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
mysql_query("SET NAMES utf8");	// On récupère de la table newsletter les personnes inscrites.
		$select4 = "SELECT mail FROM pdf_membres2";
		$result4 = mysql_query($select4) or die ('Erreur result4 : '.mysql_error() );
		$liste = '';	// On définit la liste des inscrits.
		while ($donnees = mysql_fetch_assoc($result4))
			{	
				$liste .= $donnees['mail'];
				$liste .= ','; //On sépare les adresses par une virgule.
			}
		$destinataire = $liste; 
		// en tête du mail
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Bcc: ".$liste."\r\n"; // en copie cachée pour qu'ils ne puissent pas voir les adresses des autres inscrits.
		// On envoie l'e-mail.
		if ( mail($destinataire,'Newsletter de ' .$nom_site. ' ' . $login .' ' , $message1.$message2.$message3 , $entete) ) 
				{ 	echo'Envoi de la newsletter r&eacute;ussi !!! '.'<br/>'.'$liste : '.$liste.'<br/>'.
						'$email_admin :'.$email_admin.'<br/>'.'$destinataire : '.$destinataire;
					mysql_query("SET NAMES utf8");
					$sql12 = "INSERT INTO membres_envoi (Envoi) VALUES('1')"; // pour envoi une seule fois par semaine !
					mysql_query($sql12) or die('Erreur SQL !'.$sql12.'<br>'.mysql_error());
				}
		else	{ echo 'Echec de l\'envoi de la newsletter !!!!'; 	}
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2011, 16h00   #2
Membre éclairé
 
Avatar de Nowwis
 
Homme
Développeur Web
Inscription : juin 2009
Messages : 363
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 21
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : juin 2009
Messages : 363
Points : 365
Points : 365
C'est simple, tu mets une fois en copie caché et une fois en destinataire... ça ne va pas :p

Pour envoyer des mails avec plusieurs utilisateurs, ce n'est pas le meilleur choix malheureusement...

http://php.net/manual/fr/function.mail.php
Nowwis est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 23/11/2011, 16h19   #3
Membre du Club
 
Avatar de fazpedro
 
Homme
Inscription : août 2009
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : août 2009
Messages : 360
Points : 64
Points : 64
Oui, effectivement, j'aurai pu le voir

Merci beaucoup Simdu80


Code modifié :
Code :
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
 
mysql_query("SET NAMES utf8");	// On récupère de la table newsletter les personnes inscrites.
		$select4 = "SELECT mail FROM pdf_membres2";
		$result4 = mysql_query($select4) or die ('Erreur result4 : '.mysql_error() );
		$liste = '';	// On définit la liste des inscrits.
		while ($donnees = mysql_fetch_assoc($result4))
			{	
				$liste .= $donnees['mail'];
				$liste .= ','; //On sépare les adresses par une virgule.
			}
		$destinataire = $liste; 
		// en tête du mail
		$entete = "MIME-Version: 1.0\r\n";
		$entete .= "Content-type: text/html; charset=utf-8\r\n";
		$entete .= "From: <".$email_admin.">\r\n";
		$entete .= "Bcc: ".$liste."\r\n"; // en copie cachée pour qu'ils ne puissent pas voir les adresses des autres inscrits.
		// On envoie l'e-mail.
		if ( mail($email_admin,'Newsletter de ' .$nom_site. ' ' . $login .' ' , $message1.$message2.$message3 , $entete) ) 
				{ 	echo'Envoi de la newsletter r&eacute;ussi !!! '.'<br/>'.'$liste : '.$liste.'<br/>'.
						'$email_admin :'.$email_admin.'<br/>'.'$destinataire : '.$destinataire;
					mysql_query("SET NAMES utf8");
					$sql12 = "INSERT INTO membres_envoi (Envoi) VALUES('1')"; // pour envoi une seule fois par semaine !
					mysql_query($sql12) or die('Erreur SQL !'.$sql12.'<br>'.mysql_error());
				}
		else	{ echo 'Echec de l\'envoi de la newsletter !!!!'; 	}
fazpedro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h41.


 
 
 
 
Partenaires

Hébergement Web