Formation Google AnalyticsSavez-vous bien utiliser les outils de mesure d'audience ?
Effectuez-vous un calcul de ROI (Retour sur investissement) pour savoir comment améliorer vos campagnes emarketing ?
Savez-vous utiliser les bons outils pour booster votre taux de transformation ?
La formation Web Analytics de Ranking Metrics, présentée par un expert reconnu officiellement par Google Analytics, vous apportera les réponses à toutes vos questions !
===> Informations et inscriptions.

Envoyer un message en html

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Sam Mar 01, 2008 8:59    Sujet du message: Envoyer un message en html

bonjour
pour développer ma newsletter hebdo, j'ai créé un script maison. il calcul une variable $html que je souhaite ensuite envoyer par mail().
lorsque je fais un echo $html, j'ai le bon format. par contre, lorsque j'utilise la fonction mail et que j'ouvre le mail reçu, c'est le code qui s'affiche...
quelqu'un a-t-il la solution ?
Merci
 
JeromeRookie Visiter le site web du posteur
SuperCureuil
WRInaute passionné
WRInaute passionné

Inscrit le: 09 Mar 2007
Messages: 592
Localisation: Bxl, Belgique

URL permanente de ce messagePosté le : Sam Mar 01, 2008 9:31    Sujet du message: Envoyer un message en html

Modifier l'en-ête du mail peut-être ?

Code:
Content-Type: text/html; charset="iso-8859-1"'."\n";


Confused
 
SuperCureuil
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Sam Mar 01, 2008 9:37    Sujet du message: Envoyer un message en html

et bien non .... Crying or Very sad
ca ne fonctionne toujours pas...
 
JeromeRookie Visiter le site web du posteur
SuperCureuil
WRInaute passionné
WRInaute passionné

Inscrit le: 09 Mar 2007
Messages: 592
Localisation: Bxl, Belgique

URL permanente de ce messagePosté le : Sam Mar 01, 2008 9:50    Sujet du message: Envoyer un message en html

Alors avec un p'tit bout de code ce serait plus facile pour t'aider Very Happy
 
SuperCureuil
UsagiYojimbo
WRInaute accro
WRInaute accro

Inscrit le: 23 Nov 2005
Messages: 2313
Localisation: Lyon, capitale des Gaules

URL permanente de ce messagePosté le : Sam Mar 01, 2008 10:15    Sujet du message: Envoyer un message en html

Par défaut la fonction mail envoi en plain text, non en html. Donc je pense bien aussi à un problème de header manquant où mal placé.

Un bout de code ?
 
UsagiYojimbo Visiter le site web du posteur
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Sam Mar 01, 2008 16:20    Sujet du message: Envoyer un message en html

en fait, je voulais vous épargner cela car c'est assez lourd. je mets le début pour que vous puissiez voir le header.

Code:
$html = "<html>\n";
$html .= "<head>\n";
$html .= "<meta http-equiv='Content-Language' content='fr'>\n";
$html .= "<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>\n";

$html .= "<link rel='stylesheet' type='text/css' href='Style.css'>\n";
$html .= "<LINK href='h**p://www.ateliermagique.com/style.css' type=text/css rel=stylesheet>\n";
$html .= "</head>\n";
$html .= "<BODY bgColor=#F9E29F leftMargin=0 topMargin=0>\n";
$html .= "<br>\n";
$html .= "<SPAN class='body'><i>\n";
$html .= "Cette newsletter est au format HTML. Si vous ne parvenez pas à la lire, copiez le lien suivant dans votre navigateur Internet pour la visualiser correctement : <a href='h**p://www.ateliermagique.com/newsletter_archive/newsletter_20080130.htm'>http://...</a>\n.\n";
$html .= "Pour être sur de recevoir tous mes mails, je vous conseille d'ajouter l'adresse ... à votre carnet d'adresses.</span></i><br><br>\n";
$html .= "<table border='1' cellpadding='0' cellspacing='0' align=center style='border-collapse: collapse' bordercolor='#111111' width='90%' id='AutoNumber1'>\n";
$html .= "<tr>\n";
$html .= "<td width='100%'>\n";


je rappelle que echo $html; donne un truc tout à fait convenable à l'écran...
 
JeromeRookie Visiter le site web du posteur
SuperCureuil
WRInaute passionné
WRInaute passionné

Inscrit le: 09 Mar 2007
Messages: 592
Localisation: Bxl, Belgique

URL permanente de ce messagePosté le : Sam Mar 01, 2008 17:18    Sujet du message: Envoyer un message en html

Sauf que le content-type d'un mail ce n'est pas une balise meta Wink

Un lien pour ta gouverne Very Happy

Bon travail !
 
SuperCureuil
clems942
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 13 Oct 2007
Messages: 233

URL permanente de ce messagePosté le : Sam Mar 01, 2008 17:58    Sujet du message: Envoyer un message en html

Les CSS ne passent pas dans les mails ...
 
clems942
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Sam Mar 01, 2008 22:23    Sujet du message: Envoyer un message en html

j'ai oté la CSS et lu la page du lien ci-dessus et ca ne marche toujours pas.
dans le désespoir, j'ai fait une page du type
Code:
$message ='<html><head><title>Un titre ici</title></head><body>Un message de test</body></html>';
mail("webmaster@ateliermagique.com","test html",$message);


lorsque j'ouvre le mail reçu j'obtiens ceci :
Citation:
<html><head><title>Un titre ici</title></head><body>Un message de test</body></html>


inquiétant non ? n'est-ce pas lié à mon outlook ???

voici mon code à présent :
Code:
$html = "<html>\n";
$html .= "<head>\n";
$html .= "<meta http-equiv='Content-Language' content='fr'>\n";
$html .= "</head>\n";
$html .= "<BODY bgColor=#F9E29F leftMargin=0 topMargin=0>\n";


et pour l'envoi :
Code:
$entetedate  = date("D, j M Y H:i:s -0600"); // Offset horaire
$entetemail  = "From: $from_email \n"; // Adresse expéditeur
$entetemail .= "Cc: \n";

$entetemail .= "Bcc: \n"; // Copies cachées
$entetemail .= "Reply-To: erreur_news@ateliermagique.com \n"; // Adresse de retour
$entetemail .= "X-Mailer: PHP/" . phpversion() . "\n" ;
$entetemail .= 'Content-Type: text/plain; charset="iso-8859-1"'."\n";

$entetemail .= "Date: $entetedate";
mail("webmaster@ateliermagique.com","Newsletter test",$html,$entetemail);


il n'y a bientot plus de code, on devrait trouver mon erreur Wink
 
JeromeRookie Visiter le site web du posteur
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Dim Mar 02, 2008 8:33    Sujet du message: Envoyer un message en html

j'ai trouvé. c'était mon header qui posait problème.
j'ai plutot pris celui-ci :
$headers ='From: "nom"<adresse@fai.fr>'."\n";
$headers .='Reply-To: adresse_de_reponse@fai.fr'."\n";
$headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';

merci pour le lien Wink
 
JeromeRookie Visiter le site web du posteur
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Dim Mar 02, 2008 9:31    Sujet du message: Envoyer un message en html

une dernière question : j'ai ma newsletter dans une variable $html et j'aimerais l'enregistrer dans une bdd.
comment faire car lorsque je fais
$sql = "INSERT INTO contenu (id,corps) VALUES ('','$html')";
j'ai une erreur de syntaxe car sql interprête $html...
merci
 
JeromeRookie Visiter le site web du posteur
KOogar
WRInaute accro
WRInaute accro

Inscrit le: 16 Nov 2004
Messages: 2909
Localisation: Bangalore +3h30

URL permanente de ce messagePosté le : Dim Mar 02, 2008 12:51    Sujet du message: Envoyer un message en html

clems942 a écrit:
Les CSS ne passent pas dans les mails ...


Abonne toi, cela devrait te faire changer d'avis Very Happy

http://www.webrankinfo.com/wri/abonnements.php

JeromeRookie a écrit:
une dernière question : j'ai ma newsletter dans une variable $html et j'aimerais l'enregistrer dans une bdd.
comment faire car lorsque je fais
$sql = "INSERT INTO contenu (id,corps) VALUES ('','$html')";
j'ai une erreur de syntaxe car sql interprête $html...
merci


Declare ton champ en LONGTEXT et tu peux forcer l'insertion:

Code:
$requete = "INSERT INTO contenu (corps) VALUES ('".mysql_real_escape_string($texte_newsletter_html)."')"; 


Prend aussi pour habitude d'ajouter des préfixes à tes variables, cela t'évitera de tomber sur des mots réservés et tu pollueras moins ton espace de travail.
 
KOogar Visiter le site web du posteur
JeromeRookie
WRInaute impliqué
WRInaute impliqué

Inscrit le: 11 Aoû 2003
Messages: 322

URL permanente de ce messagePosté le : Dim Mar 02, 2008 23:17    Sujet du message: Envoyer un message en html

merci pour votre aide. elle m'a été très précieuse Wink
et ma première newsletter selfmade vient de partir. merci aussi à Olivier qui m'a aidé à extraire les sujets les plus populaires de la semaine dans phpbb
 
JeromeRookie Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Autres sujets de discussion :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort