Envoi newsletter - comment cacher les destinataires?
Dernière réponse : dans Programmation
Bonjour à tous,
J'utilise le code qui suit pour envoyer la newsletter de mon site aux adresses mail contenues dans ma base de données. Je voulais savoir comment transformer mon code pour que la liste des destinataires n'apparaisse plus quand les personnes reçoivent le mail.
Merci d'avance pour votre aide, voici le script d'envoi de ma newsletter :
<?php
include ("connexion.php");
$adresses = mysql_query("SELECT email FROM newsletter") or die(mysql_error());
$liste_adresses = array();
while ($add = mysql_fetch_row($adresses)){
$liste_adresses[]=$add[0];
}
$to = implode(',',$liste_adresses);
unset($liste_adresses);
mysql_free_result($adresses);
$subject = 'Newsletter de *******.fr';
$headers ='From: "*******.fr"<******@****.fr>'."\n";
$headers .='Reply-To: *****@****.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html>
Le code de ma page newsletter
</html>';
if(mail($to,$subject,$message,$headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
J'utilise le code qui suit pour envoyer la newsletter de mon site aux adresses mail contenues dans ma base de données. Je voulais savoir comment transformer mon code pour que la liste des destinataires n'apparaisse plus quand les personnes reçoivent le mail.
Merci d'avance pour votre aide, voici le script d'envoi de ma newsletter :
<?php
include ("connexion.php");
$adresses = mysql_query("SELECT email FROM newsletter") or die(mysql_error());
$liste_adresses = array();
while ($add = mysql_fetch_row($adresses)){
$liste_adresses[]=$add[0];
}
$to = implode(',',$liste_adresses);
unset($liste_adresses);
mysql_free_result($adresses);
$subject = 'Newsletter de *******.fr';
$headers ='From: "*******.fr"<******@****.fr>'."\n";
$headers .='Reply-To: *****@****.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html>
Le code de ma page newsletter
</html>';
if(mail($to,$subject,$message,$headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
Autres pages sur : envoi newsletter cacher destinataires
Lassé par la pub ? Créez un compte
si je ne me trompe pas ca devrait faire ca
<?php
include ("connexion.php" );
$adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error());
$liste_adresses = array();
while ($add = mysql_fetch_row($adresses)){
$liste_adresses[]=$add[0];
}
{
$to = implode(',',$liste_adresses);
unset($liste_adresses);
mysql_free_result($adresses);
$subject = 'Newsletter de *******.fr';
$headers ='From: "*******.fr"<******@****.fr>'."\n";
$headers .='Reply-To: *****@****.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html>
Le code de ma page newsletter
</html>';
if(mail($to,$subject,$message,$headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
}
?>
j'ai peux-etre une idée
si tu as un champs id en autoincrémentation chaque personne à son propre id
essay de faire un scrit du genre
-envois message id=0
-envois message id=0+1
-envois message id=1+1
etc.....
comme ca chaque personne recoit son message, si tu n'y arrive pas je t'aiderais........... enfin après le boulot
si tu as un champs id en autoincrémentation chaque personne à son propre id
essay de faire un scrit du genre
-envois message id=0
-envois message id=0+1
-envois message id=1+1
etc.....
comme ca chaque personne recoit son message, si tu n'y arrive pas je t'aiderais........... enfin après le boulot
voila un truc que jai concoté
en théorie ca marche mais bon ce n'est que de la théorie
si ca marche pas, je verrais ca ce soir sauf si quelqu'un de plus comfirmé que moi en programation passe par la
<?php
include ("connexion.php" );
$nbrid = mysql_query("SELECT COUNT(*) FROM email");
$nb = mysql_result($nbreponses, 0, 0);
while ($nb !> 0) {
$nb - 1;
$adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error());
$liste_adresses = array();
while ($add = mysql_fetch_row($adresses)){
$liste_adresses[]=$add[0];
}
$to = implode(',',$liste_adresses);
unset($liste_adresses);
mysql_free_result($adresses);
$subject = 'Newsletter de *******.fr';
$headers ='From: "*******.fr"<******@****.fr>'."\n";
$headers .='Reply-To: *****@****.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html>
Le code de ma page newsletter
</html>';
}
if(mail($to,$subject,$message,$headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
en théorie ca marche mais bon ce n'est que de la théorie
si ca marche pas, je verrais ca ce soir sauf si quelqu'un de plus comfirmé que moi en programation passe par la
Alors je viens d'essayer ce que tu as dit et malheureusement il y a une erreur de syntaxe dans le code :
Parse error: syntax error, unexpected '!' in ... line 14 ce qui correspond à cette ligne
while ($nb !> 0) {
Voilà je ne sais pas trop ce qu'il faut changer là je t'avouerais que je suis larguée avec ce script...
En tout cas pour moi l'heure du week end va sonner (wah la chance) mais je reviendrais lundi et je te remercie d'avance si tu as une solution à proposer d'ici là (ou quelqu'un d'autre bien sûr)
Merci de m'aider en tout cas!
Parse error: syntax error, unexpected '!' in ... line 14 ce qui correspond à cette ligne
while ($nb !> 0) {
Voilà je ne sais pas trop ce qu'il faut changer là je t'avouerais que je suis larguée avec ce script...
En tout cas pour moi l'heure du week end va sonner (wah la chance) mais je reviendrais lundi et je te remercie d'avance si tu as une solution à proposer d'ici là (ou quelqu'un d'autre bien sûr)
Merci de m'aider en tout cas!
ca y est la fin de journée a sonné pour moi
si tu es encore la essay de remplacer ca bout de code (include ("connexion.php" );
$nbrid = mysql_query("SELECT COUNT(*) FROM email" );
$nb = mysql_result($nbreponses, 0, 0);
while ($nb !> 0) {
$nb - 1;
$adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error());
$liste_adresses = array();
)
par ca:
while ($nb >= 1) {
print $nb--;
si tu es encore la essay de remplacer ca bout de code (include ("connexion.php" );
$nbrid = mysql_query("SELECT COUNT(*) FROM email" );
$nb = mysql_result($nbreponses, 0, 0);
while ($nb !> 0) {
$nb - 1;
$adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error());
$liste_adresses = array();
)
par ca:
while ($nb >= 1) {
print $nb--;
Salut,
J'ai bien changé la partie que tu m'as dit comme tu l'as indiqué, mais j'ai toujours un message d'erreur quand j'essaie d'envoyer ma newsletter :
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in ********* line 13
Le message n'a pu être envoyé
ce qui correspond à la ligne suivante du code :
$nb = mysql_result($nbreponses, 0, 0);
au secours!!!
J'ai bien changé la partie que tu m'as dit comme tu l'as indiqué, mais j'ai toujours un message d'erreur quand j'essaie d'envoyer ma newsletter :
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in ********* line 13
Le message n'a pu être envoyé
ce qui correspond à la ligne suivante du code :
$nb = mysql_result($nbreponses, 0, 0);
au secours!!!
salut
je ne suis vraiment pas sur du tout, ca m'étonnerait meme que ca fonctionne mais teste ca (on sais jamais ^^
)
je ne suis vraiment pas sur du tout, ca m'étonnerait meme que ca fonctionne mais teste ca (on sais jamais ^^
)
<?php
include ("connexion.php" );
$nbrid = mysql_query("SELECT COUNT(*) FROM email" );
while ($donnees = mysql_fetch_array($retour))
{
$nb = mysql_result($nbreponses, 0, 0);
}
while ($nb !> 0)
{
$nb - 1;
$adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error());
$liste_adresses = array();
while ($add = mysql_fetch_row($adresses)){
$liste_adresses[]=$add[0];
}
$to = implode(',',$liste_adresses);
unset($liste_adresses);
mysql_free_result($adresses);
$subject = 'Newsletter de *******.fr';
$headers ='From: "*******.fr"<******@****.fr>'."\n";
$headers .='Reply-To: *****@****.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
$message ='<html>
Le code de ma page newsletter
</html>';
}
}
if(mail($to,$subject,$message,$headers))
{
echo 'Le message a été envoyé';
}
else
{
echo 'Le message n\'a pu être envoyé';
}
?>
Petite question quand tu mets :
$nbrid = mysql_query("SELECT COUNT(*) FROM email" );
Ca ne serait pas plutot
$nbrid = mysql_query("SELECT COUNT(*) FROM newsletter" ); ?
Car ma table s'appelle newsletter et non email mais je ne sais pas si on compte dans la table ou dans le champ email...
mais en tout cas j'ai essayé ton code et ca marche toujours pas
$nbrid = mysql_query("SELECT COUNT(*) FROM email" );
Ca ne serait pas plutot
$nbrid = mysql_query("SELECT COUNT(*) FROM newsletter" ); ?
Car ma table s'appelle newsletter et non email mais je ne sais pas si on compte dans la table ou dans le champ email...
mais en tout cas j'ai essayé ton code et ca marche toujours pas
Citation :
$nbrid = mysql_query("SELECT COUNT(*) FROM email" ); Ca ne serait pas plutot
$nbrid = mysql_query("SELECT COUNT(*) FROM newsletter" ); ?
oups je viens de remarqué que ce que j'ai fait n'était pas complet, j'éssayrais de te faire un script complet dans la journée sinon ce que j'éssayais de faire c'est ca (mais ce que j'ai fait est complétement faux dsl) ((j'en ^rpfite pour l'améliorer en meme temps)
-on récupère les id (si c'est bien de 1 à xx nombre)
-avec une boucle on envois le méssage à chaque id
j'éssay de te faire ca dans la journée et encore désolé pour ma "petite" (énorme) erreur
maudus a dit :
Car je n'utilise pas de logiciel de messagerie pour envoyer ma newsletter donc je ne sais pas si cette fonctionnalité existe en script et comment l'utiliser dans le code php qui me permet d'envoyer ma newsletter...Bien sûr que c'est possible, le mot clé s'appelle "Bcc" et il est utilisé exactement comme le "To".
Du coup je ferais un truc comme ça:
<?php include ("connexion.php" ); $adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error()); $liste_adresses = array(); while ($add = mysql_fetch_row($adresses)){ $liste_adresses[]=$add[0]; } $bcc = implode(',',$liste_adresses); $to = "My Friends"; unset($liste_adresses); mysql_free_result($adresses); $subject = 'Newsletter de *******.fr'; $headers ='From: "*******.fr"<******@****.fr>'."\n"; $headers .='Reply-To: *****@****.fr'."\n"; $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n"; $headers .='Content-Transfer-Encoding: 8bit'; $headers .='Bcc: $bcc'; $message ='<html> Le code de ma page newsletter </html>'; if(mail($to,$subject,$message,$headers)) { echo 'Le message a été envoyé'; } else { echo 'Le message n\'a pu être envoyé'; } ?>
Essaye de changer le séparateur ',' en ';' dans ton implode.
Edit: ajoute des \n aussi :
Edit: ajoute des \n aussi :
<?php include ("connexion.php" ); $adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error()); $liste_adresses = array(); while ($add = mysql_fetch_row($adresses)){ $liste_adresses[]=$add[0]; } $bcc = implode(';',$liste_adresses); $to = "My Friends"; unset($liste_adresses); mysql_free_result($adresses); $subject = 'Newsletter de *******.fr'; $headers ='From: "*******.fr"<******@****.fr>'."\n"; $headers .='Reply-To: *****@****.fr'."\n"; $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n"; $headers .='Content-Transfer-Encoding: 8bit'."\n"; $headers .='Bcc: $bcc'."\n"; $message ='<html> Le code de ma page newsletter </html>'; if(mail($to,$subject,$message,$headers)) { echo 'Le message a été envoyé'; } else { echo 'Le message n\'a pu être envoyé'; } ?>
et avec BCC en majuscules ?
Et rechange le ";" en "," pour être certain...
Et rechange le ";" en "," pour être certain...
<?php include ("connexion.php" ); $adresses = mysql_query("SELECT email FROM newsletter" ) or die(mysql_error()); $liste_adresses = array(); while ($add = mysql_fetch_row($adresses)){ $liste_adresses[]=$add[0]; } $bcc = implode(',',$liste_adresses); $to = "My Friends"; unset($liste_adresses); mysql_free_result($adresses); $subject = 'Newsletter de *******.fr'; $headers ='From: "*******.fr"<******@****.fr>'."\r\n"; $headers .='Reply-To: *****@****.fr'."\r\n"; $headers .='Content-Type: text/html; charset="iso-8859-1'."\r\n"; $headers .='Content-Transfer-Encoding: 8bit'."\r\n"; $headers .='BCC: $bcc'."\r\n"; $message ='<html> Le code de ma page newsletter </html>'; if(mail($to,$subject,$message,$headers)) { echo 'Le message a été envoyé'; } else { echo 'Le message n\'a pu être envoyé'; } ?>
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
- ForumEnvoi en cci -ou retrouver les destinataires
- ForumCreer newsletter envoi outlook
- ForumEnvoi groupe 100 destinataires
- ForumEnvoi du meme email a plusieurs destinataires
- ForumOutlook 2007 envoi plusieurs destinataires
- solutionsEnvoi plusieurs destinataires outlook
- ForumEnvoi d'un mail vers plusieurs destinataires
- ForumEnvoi mail plusieurs destinataires
- ForumIntegrer envoi de adresse mail newsletter
- ForumEnvoi mail windev a plusieurs destinataires
- Voir plus