Envoi de plusieur mail + mail html

Résolu
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 - 23 oct. 2004 à 12:02
 oragore - 13 déc. 2004 à 21:00
Salut
voila j'ai un code pour envoyer un mail lors de l'envoi du formulaire
mais je voudrai que cela envoi le mail aplusieur destinataire.
et que le mail soit rédgier en html.
COmmetn faire ?
voiçi mon code :

<?php
$destinataire = array(
'destinataire1'=>'blacknight91@free.fr',
'destinataire2'=>'blacknight91@free.fr'
);
$subject = "Nouvelle Animation";
$entet = "From: "Ton pseudo"\n";
$msg = "
<html>
Nouvelle animation
disponible



Si vous recevez ce mail c'est que vous
êtes inscrit a la newsletter de flash_nouvelle.

Blacknight vous annonce qu'une
nouvelle animation est disponible sur son ftp.

L'animation $animation peut être vu sur l'url suivante
:

$url

Message personel de Blacknight
:

$msg

Il vous ait possible d'écrire à
Blacknight pour lui donnez votre avis en écrivant a l'adresse suivante
:

blacknight91@free.fr

En vous remerciant.



Blacknight
</html>
";
foreach($destinataire as $key =>$value) {
mail($value,$subject,$msg,$entet);
}
?>

QUelqu'un sait t'il comment faire ?
merci d'avance

8-) Bl@cknight91Titi :-p

29 réponses

LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
24 oct. 2004 à 18:58
Slt,

Le script ci dessous tourne trés bien. Adapte le a tes besoins

$destinataire = array('blacknight91@free.fr','blacknight100@free.fr');

foreach ($destinataire as $value) {
echo mail($value,"titre","texte","From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\n");
}

ou fait tout smplement comme le propose Magidev
en copie jointe cachée :

donc

$destinataire = "blacknight91@free.fr,blacknight100@free.fr,autre@autre.com";

echo mail("ton@titi.com","titre","texte","From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\nBCC:$destinataire");
}

@++
Laurent
3
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 13:15
Slt,

Plus bas je t'ai mis genre tuto que j'ai fais pour une newsletter, meme principe que ce que tu veux, dedans tu pourra voir la structure pour envoyer 1 mail en HTML,
Maintenant ton code est ok pour envoyer des mails a partir d'un tableau mais je ne serais que trop te conseiller de faire ca a partir de tables. Voila en esperant que cela t'aide.

@++
Laurent
http://phpsources.net

Le principe est simple, il y a une table que j'ai apeler ici 'newsletters' qui est la base de donées de toute les adresses avec le nom et la date a laquel le membre s'est inscrit.

CREATE TABLE newsletters (
  id int(100) NOT NULL auto_increment,
  email varchar(150) NOT NULL default '',
  nom varchar(150) NOT NULL default '',
  date date NOT NULL default '0000-00-00',
  PRIMARY KEY  (id)
) TYPE=MyISAM;

Ici, juste la requete pour inserer les élements dans ta table 'newsletter'
<?php

$email = ''; // email
$nom = ''; // Nom, auteur, speudo ou autres...

// insertion de la news dans sa table:
mysql_query("INSERT INTO newsletters (email, nom, date) VALUES('$email','$nom',NOW())");
?>

Ensuite on fais une lecture de ta table dans une boucle (while) et on envoi le mail
en meme temps. Il y a aussi 1 petit compteur qui compte et affiche les mails parties.

<?php

   //envoie du mail
   // Exemple de contenu du mail
   $contenu = "Salut! 
email : $e_mail
"; // le contenu du mail
   $contenu = "Bye! 

";

   $q = mysql_query("SELECT email FROM newsletters"); // requete
   $compteur=1; // variable pour compter les mails
   while ($r = mysql_fetch_array($q)) {
   $e_mail =  $r[email]; // le mail
   // envoi du mail HTML
   mail($e_mail,"titre",$contenu,"From:nom@tonsiteouautre.com\nContent-Type: text/html; charset="iso-8859-1"\n");
        echo" N° $compteur $e_mail : envoyé avec succés!
";
        $compteur++; // ajoute 1 à la variale du compteur
        }  // fin du while

?>
0
fabolo Messages postés 18 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 2 avril 2006
23 oct. 2004 à 15:31
Salut,

Dans le cas d'envoi de mail au format HTML il peut arriver que ton mail soit tronqué si tu ne déclare pas bien le type MIME dans les Headers du mail, cela arrives en autre sous les serveur déployés sous windows.

De plus certains serveur pop3 ou clients sont allergiques aux mailers Php, donc je te conseille de renseigner le X-Mailer en tant que mailer outlook pour éviter tout problemes.

Voici un bon de code développé pour le formulaire de candidature sur un site, pour lequel je n'ai pas eu de bug recensé.

$message="<html>
<head>

//Ton code HTML

</html>";

$header="
MIME-Version: 1.0\r\n
Content-type: text/html; charset=iso-8859-1\r\n
From:$mail;
";

mail($mailing,"Demande de candidature",$message,$header);

-=Fabolo=-
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 17:34
Ou met t'on le destinaire ou pluto les déstinataire ?

8-) Bl@cknight91Titi :-p
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 17:43
tu t'es basé sur quel code?
montre ton code
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 17:45
bin la je l'ai pas mal modifier mais bon regarde :

<?php
$header= "
MIME-Version: 1.0\r\n
Content-type: text/html; charset=iso-8859-1\r\n
From:$mail;
";

$destinataire = array(
'destinataire1'=>'blacknight91@free.fr',
'destinataire2'=>'blacknight91@free.fr');
$subject = "Nouvelle Animation";
$entet = "From: "Ton pseudo"\n";
$msg = "
<html><head></head>
Nouvelle animation
disponible



Si vous recevez ce mail c'est que vous
êtes inscrit a la newsletter de flash_nouvelle.

Blacknight vous annonce qu'une
nouvelle animation est disponible sur son ftp.

L'animation $animation peut être vu sur l'url suivante
:

$url

Message personel de Blacknight
:

$msg

Il vous ait possible d'écrire à
Blacknight pour lui donnez votre avis en écrivant a l'adresse suivante
:

blacknight91@free.fr

En vous remerciant.



Blacknight
</html>
";
foreach($destinataire as $key =>$value) {
mail($value,$subject,$msg,$header);
}
?>

voila

8-) Bl@cknight91Titi :-p
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 18:05
essaye comme ca

$destinataire = array('blacknight91@free.fr','blacknight91@free.fr');
reset($destinataire);

foreach ($destinataire as $value) {
mail($value,$subject,$msg,$header);
}
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 18:22
non sa ne marche pas
il dit qu'il y a une ereur sur la ligne :
mail($value,$subject,$msg,$header);
comprend pas pourquoi voiçi le code en entier :

<?php
$header="
MIME-Version: 1.0\r\n
Content-type: text/html; charset=iso-8859-1\r\n
From:$mail;
";

$destinataire = array('blacknight91@free.fr','blacknight91@free.fr');
reset($destinataire);
$subject = "Nouvelle Animation";
$entet = "From: "Ton pseudo"\n";
$msg = "
<html><head></head>
Nouvelle animation
disponible



Si vous recevez ce mail c'est que vous
êtes inscrit a la newsletter de flash_nouvelle.

Blacknight vous annonce qu'une
nouvelle animation est disponible sur son ftp.

L'animation $animation peut être vu sur l'url suivante
:

$url

Message personel de Blacknight
:

$msg

Il vous ait possible d'écrire à
Blacknight pour lui donnez votre avis en écrivant a l'adresse suivante
:

blacknight91@free.fr

En vous remerciant.



Blacknight
</html>
";
foreach ($destinataire as $value) {
mail($value,$subject,$msg,$header);
}

?>

8-) Bl@cknight91Titi :-p
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 18:37
renseigne la variable $mail

$mail = "ton@email.com";

$header="
MIME-Version: 1.0\r\n
Content-type: text/html; charset=iso-8859-1\r\n
From:$mail;
";

ensuite test en ligne c'est toujours mieux.

Puis debogue pas a pas donc fait juste dans 1 premier temps:
mail("blacknight91@free.fr",$subject,$msg,$header);
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 19:10
Alors....
Je reçoit bien deux mail mais....
l'un vient de blacknight91@free.fr (jusque la rien d'anormale du tt)
mais le message est en html on n'y comprend rien
et le second mail vient de "www-data" mais le contenu c'est pareil que le précédant c'est du code html a n'y rien comprendre
:(
voila le code mais sans le html du msg pcq sinon sa fai trop de spam :

<?php
$mail = "blacknight91@free.fr";

$header="
MIME-Version: 1.0\r\n
Content-type: text/html; charset=iso-8859-1\r\n
From:$mail;
";

$destinataire = array('blacknight91@free.fr','blacknight91@free.fr');
reset($destinataire);

$subject = "Nouvelle Animation";
$entet = "From: "Ton pseudo"\n";
$msg = "
(la le msg en html)
";
foreach ($destinataire as $value) {
mail("blacknight91@free.fr",$subject,$msg,$header);
}

?>

8-) Bl@cknight91Titi :-p
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 19:11
Lien
c'est le lien vers la page où je test si tu veux aller voir

8-) Bl@cknight91Titi :-p
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 19:31
je connais pas ce que t'a dis fabolo, utilise ce header plutot

foreach ($destinataire as $value) {
mail($value,$msg,"From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\n");
}
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 19:59
Sa marche masi eu le message est mis dans le sujet :(
et dans le mail il y a :
From:blacknight91@free.fr
Content-Type: text/html; charset="iso-8859-1"

il n'y a qu'un mail d'nevoyer
voiçi le code sans le msg :

<?php

$destinataire = array('blacknight91@free.fr','blacknight91@free.fr');
reset($destinataire);

$subject = "Nouvelle Animation";
$entet = "From: "Ton pseudo"\n";
$msg = "
MSG....
";
foreach ($destinataire as $value) {
mail($value,$msg,"From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\n");
}

?>

8-) Bl@cknight91Titi :-p
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 20:10
oupsi!!

foreach ($destinataire as $value) {
mail($value,$subject,$msg,"From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\n");
}
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 oct. 2004 à 20:30
Warning: mail(): Erreur d'appel #1.5 in /var/www/free.fr/1/e/blacknight91/Flash_nouvelle/fonction.php on line 35

c'est l'erreur qu'il me marque
la ligne c'est :

mail($value,$subject,$msg,"From:blacknight91@free.fr\nContent-Type: text/html; charset="iso-8859-1"\n");

comprend po :(

8-) Bl@cknight91Titi :-p
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
23 oct. 2004 à 22:52
je vais tester ca direct en ligne demain, je te tiens au courant
++ Laurent
0
magidev Messages postés 249 Date d'inscription mardi 24 octobre 2000 Statut Membre Dernière intervention 28 août 2009
24 oct. 2004 à 00:36
Pour se faciliter la vie on peut mettre aussi toutes les adresse mails a la suite dans l'entête BCC:

C'est plus simple et les autres destinataires ne voient pas ca et on évite de faire un loop d'envoi de mail qui risque de dépasser le timeout du serveur, donc comme ca le serveur mail fait ca

*************
On a parfois de la chance dans son malheur, moi par exemple, je me suis blessé avec une boite de sparadraps (P.Geluck)

Si vous désirez vous ajouter dans mes contacts MSN, veuillez m'envoyer un message via ce site.
0
LaurentKOogar Messages postés 369 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 20 octobre 2013
24 oct. 2004 à 01:56
Slt,

Question
j'ai jamais tester ta soluce et je me demandais si les adresses des autres membres restaient cachés dans la messagerie du recepteur?
Peux tu donner la syntaxe egalement. Merci and good night

++
Laurent
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
24 oct. 2004 à 10:59
dans la messagerie du récepteur ?
euuu
non je croit pas qu'on les vois
le récepteur reçoit un mail avec des informations et le destinaire aparaissant est "blacknight91@free.fr"
mais rien d'autre qui puisse indiquer les autres adresses
le code ne marche toujours pas :(
il doit pourtant bien y avoir un moyen
j'ai reçu deux mails ce matin avec dedan "texte" de marqué je supose que c'est toi qui a testé ?

8-) Bl@cknight91Titi :-p
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
24 oct. 2004 à 17:17
alo ?

8-) Bl@cknight91Titi :-p
0
Rejoignez-nous