Newsletter

Signaler
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006
-
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006
-
Bonjour,

Je préviens tout de suite je suis une newbie donc je sens que je vais me faire taper sur les doigts mais c'est pas grve j'ose quand même.

Je n'y connais absolument rien en code, ect..

J'ai installé une newsletter sur mon site, le problème c'est que lorsque je l'envoie en html , le destinataire qui n'a pas une messagerie qui lit le html (style lorsq'on va sur free) verra tout le code au lieu de ma belle page faite en html. Je peux bien entendu l'envoyer en txt pure et simple mais c'est très très moche et cela ne fait pas professionnel.
Donc ma question, y'a til une solution ??? ou est ce qu'informatiquement ce n'est pas possible.

Soyez indulgent svp

Gaelle79
http://pastab.free.fr

16 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,

tu peux envoyer un mail en texte et html, le format qui sera vu sera celui compatible ;-)

si les deux sont compatibles alors en fonction des options de ton client mail ça sera html ou texte. A lire :
Envoyer un mail avec PHP

a +
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

Merci pour ton lien.

Mais j'avoue que je reste perplexe , comment utilise tu le code php envoyer un mail en html et texte.

J'ai mis mes infos dans le code j'ai même insérer une petite page html dans les balises prévues à cet effet. Puis j'ai fait un copier coller de tout le code php dans l'encart prévu pour envoyer la newsletter puis je l'ai envoyé. Mais le résultat est loin d'être probant, une partie s'affiche en html mais en oubliant mes images, couleurs ect et puis à la suite il y ya le texte suivant qui s'affiche : "genère la frontière du mail ... jusqu'à la fin du code php.
Peux tu me dire la marche à suivre ??? je continue néammoins à faire des essais.

Merci pour ton aide
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
"mais en oubliant mes images, couleurs ect"

si tu passes par des feuilles de style en chemins relatifs et des images en chemins relatifs c'est normal hein ^^

Ensuite tu as du mal copier le code ou alors je l'ai mal tapé, je ne vois pas comment un commentaire php pourrait se retrouver dans le mail :-(

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

Bon, je ne comprend rien du tout, désolée, là tu me parles en chinois.

Je te remercie pour ton aide, mais si tu me dis pas comment je dois procéder je n'y arriverais pas. Peut être que cela ne fonctionne pas avec le logiciel Persomailing que j'utilise.
Je vais essayer de trouver une autre solution.

Merci

A+
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
" si tu me dis pas comment je dois procéder je n'y arriverais pas"

Je veux bien t'aider mais faut y mettre un peu du tiens, je t'ai filé un lien en php qui décrit comment envoyer un mail (et il fonctionne très bien le script) que puis-je faire de plus ? je vais pas rédiger le mail quand même lol

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

Euh, sans vouloir te vexer, j'ai essayé pleins de choses avant de redemander de l'aide, pour moi, c'est incompréhensible alors que pour toi cela a l'air d'être un jeu d'enfant.

J'ai intégré ton code sous dreamweaver, j'ai mis mon adresse mail, et j'ai insérer la page html que j'avais faite pour la mise en page de la newsletter. J'ai collé tout ce code dans la page admin.php3 de la gestion de ma newsletter et j'ai fait envoyé, le résultat est celui que je t'ai décrit ci-dessus.
Donne moi un exemple car je ne voie pas ce que je peux faire d'autres.

Merci
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
C'est du PHP4 le code ;-) envoie-le code que tu as modifié histoire qu'on voit quelque chose, mais teste avec du php4, n'enregistre pas avec l'extension php3, il se peut que ce soit mal interprété.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

Ca c'est le code que tu m'as donné et ou j'ai fait des rajouts et modification, je l'ai collé donc ici http://pastab.free.fr/persomailing/persomailing_admin.php3 dans la partie envoie newsletter.
Le logiciel Persomailing les pages sont enregistrées en php3 d'origine , je n'ai rien crée de mes petites mains, j'ai juste eu à l'installer. ;-)

<?php
//-----------------------------------------------
//DECLARE LES VARIABLES
//-----------------------------------------------
[mailto:$email_expediteur= 'gaelle79@free.fr' $email_expediteur='gaelle79@free.fr'];
[mailto:$email_reply='gaelle79@free.fr' $email_reply='gaelle79@free.fr'];
$message_texte='Bonjour,'."n\n".'Voici un message au format texte';


$message_html='<html>
<head>
<title>Document sans nom</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
background-color: #CCCCFF;
}
.Style1 {color: #FFFFFF}
.Style5 {color: #000000}
.Style7 {
color: #FFFFFF;
font-family: Georgia, "Times New Roman", Times, serif;
font-weight: bold;
font-size: 12px;
}
.Style8 {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 12px;
color: #666666;
}
a:link {
color: #000000;
}
a:visited {
color: #000000;
}
.Style9 {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 9px;
}
.Style10 {font-size: 10px}
-->
</style></head>


<td bordercolor="#FFFFFF" >

http://pastab.free.fr/imagesite/logo.jpg" width="800" height="76" border="0" align="middle">,

----

NEWSLETTER du 29 Janvier 2006

<table width="590" border="1" align="center" class="Style1">
----,

------DES IDEES, DES IDEES..... pour joindre l'utile &agrave; l'agr&eacute;able -----

Petit conseil pour l'entretien de vos toiles

comment les laver ?

A bient&ocirc;t sur mon'>http://pastab.free.fr/\">mon site

Ga&euml;lle

</td>


</td>
</tr>
<tr>
<td bgcolor ="#ECCACA">
Pour vous d&eacute;sabonner de la Newsletter, il vous suffit de le faire &agrave; partir du lien Newsletter situ&eacute; sur mon site.
</td>
</tr>
</table>

</td>
</tr>
<tr align="center" valign="top">
<td border="1">




</td>
</tr><tr align="center" valign="top">
&nbsp;

</html>';


//-----------------------------------------------
//GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML
//-----------------------------------------------


$frontiere = '-----=' . md5(uniqid(mt_rand()));


//-----------------------------------------------
//HEADERS DU MAIL
//-----------------------------------------------


$headers = 'From: "Gaelle" <'.$email_expediteur.'>'."\n";
$headers .= 'Return-Path: <'.$email_reply.'>'."\n";
$headers .= 'MIME-Version: 1.0'."\n";
$headers .= 'Content-Type: multipart/alternative; boundary="'.$frontiere.'"';


//-----------------------------------------------
//MESSAGE TEXTE
//-----------------------------------------------
$message = 'This is a multi-part message in MIME format.'."\n\n";


$message .= '--'.$frontiere."\n";
$message .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n";
$message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$message .= $message_texte."\n\n";


//-----------------------------------------------
//MESSAGE HTML
//-----------------------------------------------
$message .= '--'.$frontiere."\n";


$message .= 'Content-Type: text/html; charset="iso-8859-1"'."\n";
$message .= 'Content-Transfer-Encoding: 8bit'."\n\n";
$message .= $message_html."\n\n";


$message .= '--'.$frontiere.'--'."\n";


mail($destinataire,$sujet,$message,$headers);
?>
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
oui t'as oublié d'échapper les appostrophes dans le contenu html :

$variable='test d\'apostrophe'; car $variable='test d'apostrophe'; ça ne fonctionnera pas, et c'est ce que tu as fait dans le contenu du mail html :-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

???
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
$message_html='<html>
<head>
<title>Document sans nom</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
background-color: #CCCCFF;
}
.Style1 {color: #FFFFFF}
.Style5 {color: #000000}
.Style7 {
color: #FFFFFF;
font-family: Georgia, "Times New Roman", Times, serif;
font-weight: bold;
font-size: 12px;
}
.Style8 {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 12px;
color: #666666;
}
a:link {
color: #000000;
}
a:visited {
color: #000000;
}
.Style9 {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 9px;
}
.Style10 {font-size: 10px}
-->
</style></head>

<td bordercolor="#FFFFFF" >

http://pastab.free.fr/imagesite/logo.jpg" width="800" height="76" border="0" align="middle">,

----

NEWSLETTER du 29 Janvier 2006

<table width="590" border="1" align="center" class="Style1">
----,

------DES IDEES, DES
IDEES..... pour joindre l\'utile &agrave; l\'agr&eacute;able
-----

Petit conseil pour l\'entretien de vos
toiles

comment les laver ?

A bient&ocirc;t sur Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

Ok j'ai fait ta modif et j'ai copié collé tout le code dans ma page admin.php de la gestion de la newsletter, je me suis donc envoyé à moi même (sur une deuxieme adresse mail que je possède) la newsletter et voici ce que ca donne sous Outlook :


Petit conseil pour l'entretien de vos toiles


comment les laver ?


A bientôt sur mon site


Gaëlle



</TD></TR></TABLE>
</TD></TR><TR><TD bgcolor= "#ECCACA">

Pour vous désabonner de la Newsletter, il vous suffit de le faire à partir du lien Newsletter situé sur mon site.
</TD></TR></TABLE>

</TD></TR><TR align="center" valign="top"><TD border="1">



</TD></TR><TR align="center" valign="top">'; //----------------------------------------------- //GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML //----------------------------------------------- $frontiere = '-----=' . md5(uniqid(mt_rand())); //----------------------------------------------- //HEADERS DU MAIL //----------------------------------------------- $headers = 'From: "Gaelle" <'.$email_expediteur.'>'."n"; $headers .= 'Return-Path: <'.$email_reply.'>'."n"; $headers .= 'MIME-Version: 1.0'."n"; $headers .= 'Content-Type: multipart/alternative; boundary="'.$frontiere.'"'; //----------------------------------------------- //MESSAGE TEXTE //----------------------------------------------- $message = 'This is a multi-part message in MIME format.'."nn"; $message .= '--'.$frontiere."n"; $message .= 'Content-Type: text/plain; charset="iso-8859-1"'."n"; $message .= 'Content-Transfer-Encoding: 8bit'."nn"; $message .= $message_texte."nn"; //----------------------------------------------- //MESSAGE HTML //----------------------------------------------- $message .= '--'.$frontiere."n"; $message .= 'Content-Type: text/html; charset="iso-8859-1"'."n"; $message .= 'Content-Transfer-Encoding: 8bit'."nn"; $message .= $message_html."nn"; $message .= '--'.$frontiere.'--'."n"; mail($destinataire,$sujet,$message,$headers); ?>


<CENTER>------------------------------</CENTER>
[ PersoMailing est un gestionnaire de mailing liste programmé par highmat et disponible gratuitement sur www.persoweb.fr.st ]
Copyright Persoweb Novembre 2000

Et la même Newsletter mais cette fois ci lu par le bien du serveur Free directement sans utiliser donc Outlook :

Petit conseil pour l'entretien de vos toiles

comment les laver ?

A bientôt sur mon site

Gaëlle

Pour vous désabonner de la Newsletter, il vous suffit de le faire à partir du lien Newsletter situé sur mon site.



'; //----------------------------------------------- //GENERE LA FRONTIERE DU MAIL ENTRE TEXTE ET HTML //----------------------------------------------- $frontiere = '-----=' . md5(uniqid(mt_rand())); //----------------------------------------------- //HEADERS DU MAIL //----------------------------------------------- $headers = 'From: "Gaelle" <'.$email_expediteur.'>'."n"; $headers .= 'Return-Path: <'.$email_reply.'>'."n"; $headers .= 'MIME-Version: 1.0'."n"; $headers .= 'Content-Type: multipart/alternative; boundary="'.$frontiere.'"'; //----------------------------------------------- //MESSAGE TEXTE //----------------------------------------------- $message = 'This is a multi-part message in MIME format.'."nn"; $message .= '--'.$frontiere."n"; $message .= 'Content-Type: text/plain; charset="iso-8859-1"'."n"; $message .= 'Content-Transfer-Encoding: 8bit'."nn"; $message .= $message_texte."nn"; //----------------------------------------------- //MESSAGE HTML //----------------------------------------------- $message .= '--'.$frontiere."n"; $message .= 'Content-Type: text/html; charset="iso-8859-1"'."n"; $message .= 'Content-Transfer-Encoding: 8bit'."nn"; $message .= $message_html."nn"; $message .= '--'.$frontiere.'--'."n"; mail($destinataire,$sujet,$message,$headers); ?>

------------------------------

[ PersoMailing est un gestionnaire de mailing liste programmé par highmat et disponible gratuitement sur www.persoweb.fr.st ]
Copyright Persoweb Novembre 2000

<center>------------------------------</center>
[ PersoMailing est un gestionnaire de mailing liste programmé par highmat et disponible gratuitement sur [www.persoweb.fr.st ]
Copyright Persoweb Novembre 2000

????ou est le problème ??

en tout cas merci pour ton aide car tu es le seul qui à l'air de s'y connaitre en code php concernant les newsletters
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
J'adore la mise en page de PHPCS, les belles failles de sécurité (on vient d'en avoir un exemple)...

Il doit y avoir un autre problème quelque part, il faut voir ce que contient la variable $message_texte par exemple...

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

En fait je ne sais pas ce que c'est qu'une variable, pour l'instant comme tu as pu le constater je n'ai rien rajouter de plus dans message_texte, mais j'ai l'impression qu'il ne le prend pas en compte.Je viens de regarder à gauche et à droite, j'ai deja eliminer le pb de free et de la fonction mail qui est bien active. Je me demande s'il ne faut pas que j'essaye avec un autre logiciel que Persomailing mais yen a des tas et même en regardant les commentaires ya toujours quelques choses qui cloche chez qqun alors...Peut être que je suis à côté de la plaque mais je me suis dit que c'est peut etre le script de Persomailing qui bloque car j'ai regardé le script persomailing.php3 et à plusieurs endroits ya écrit : $entetemail.= "Content-Type: text/html"; on ne devrait pas remplacer text/html par multipart/alternative ???

Voici le code en entier de la page php persomailing :

<?
//################################### PersoMailing v1.0 ###################################
//############## script créé par highmat et disponible gratuitement sur www.persoweb.fr.st ###############
//############################ Copyrignt Persoweb Novembre 2000 ############################
//############################ La modification du script est interdite ! ###########################


include("persomailing_cfg.php3");
//------------------------------
function connecter($host,$user,$pass,$bdd){
[mailto:$connexion=@mysql_connect($host $connexion=@mysql_connect($host], $user, $pass);
[mailto:$result=@mysql_query($query $result=@mysql_query($query]);
[mailto:$t=@mysql_numrows($result $t=@mysql_numrows($result]);
if(!$t){
$end=0;
}
else{
$end=1;
}
return $end;
}
//------------------------------
function creer_table($table){
$query ="Create Table $table
(
email tinyblob not null
)";
@mysql_query($query);
}
//------------------------------
function ajouter_mail($adr,$table){
global $action;
global $already_msg;
global $ok_msg;
if($action=="ajouter"){
$query="SELECT email FROM $table WHERE email='$adr'";
[mailto:$result1=@mysql_query($query $result1=@mysql_query($query]);
[mailto:$result2=@mysql_numrows($result1 $result2=@mysql_numrows($result1]);
if($result2){
$already=1;
}
if($already){
echo $already_msg;
}
else{
$query="INSERT INTO $table (email) VALUES ('$adr')";
@mysql_query($query);
echo $ok_msg;
}


}


}
//------------------------------
function supprimer_mail($adr,$table){
global $action;
global $eff_msg;
global $no_msg;
if($action=="supprimer"){
$query="SELECT email FROM $table WHERE email='$adr'";
[mailto:$result1=@mysql_query($query $result1=@mysql_query($query]);
[mailto:$result2=@mysql_numrows($result1 $result2=@mysql_numrows($result1]);
if($result2){
$already=1;
}
if($already){
$query2="DELETE FROM $table WHERE email='$adr'";
mysql_query($query2);
echo $eff_msg;
}
else{
echo $no_msg;
}
}
}
//------------------------------
function send_ok($adr,$yourmail,$aff_mail){
global $liste;
global $police;
global $police_size;
global $mail_text;
global $sujet_mail;
$text=file("$mail_text");
$taille=sizeof($text);
$var="<html>";
for($a=0;$a<$taille+1;$a++){
$var.="$text[$a]
";
}
$var.="[ PersoMailing est un gestionnaire de mailing liste programmé par highmat et disponible gratuitement sur [mailto:$res=@mysql_query($query $res=@mysql_query($query]);
[mailto:$nb=@mysql_numrows($res $nb=@mysql_numrows($res]);
$corps.="Nombre total d'emails inscrits à votre liste : $nb";
$corps.="Pour effacer cette adresse, allez à l'adresse : [mailto:$res=@mysql_query($query $res=@mysql_query($query]);
[mailto:$nb=@mysql_numrows($res $nb=@mysql_numrows($res]);
$corps.="Nombre total d'emails inscrits à votre liste : $nb";
$corps.="Pour acceder à la section admin cliquez-ici";
$corps.="</html>";
$from_email=$adr;
$entetemail2="From: $from_email \n";
$entetemail2.= "Content-Type: text/html";
mail("$yourmail","Nouvelle inscription à votre liste : $liste","$corps",$entetemail2);
}
//------------------------------
$connex=connecter($host,$user,$pass,$bdd);
if(!$connex){
echo $erreurs_connexion;
exit();
}
$table_existe=table_existe($table);
if(!$table_existe){
creer_table($table);
}
if($action=="ajouter"){
ajouter_mail($adr,$table);
send_ok($adr,$yourmail,$aff_mail);
}
elseif($action=="supprimer"){
supprimer_mail($adr,$table);
send_eff($adr,$yourmail,$aff_mail);
}


?>

J'ai envoyé un mail au créateur mais pas de réponse je pense qu'il n'existe plus.

Et oui j'ai pris peur en voyant la page du forum, lol !

Je continue néammoins mes investigations à droite et à gauche

Merci
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
"En fait je ne sais pas ce que c'est qu'une variable"

il faudrait que tu apprennes les bases de PHP car je vais pas mâcher tout le travail non plus ;-)

Apprendre PHP

Quand t'auras lu et si t'as encore un problème je regarderai, mais bon là c'est long comme code...
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10
Date d'inscription
dimanche 29 janvier 2006
Statut
Membre
Dernière intervention
31 janvier 2006

oki !!

Merci

a ++