Mon problème vient du traitement que fait le PHP avec ma variable body. Je dois pas passer par du javascript (seulement pour envoyer mes infos au script PHP)
Version imprimable
Mon problème vient du traitement que fait le PHP avec ma variable body. Je dois pas passer par du javascript (seulement pour envoyer mes infos au script PHP)
Le Javascript c'était pour prévisualiser ton HTML dans une fenetre avant de l'envoyer.
Un simplete permettra de voir ou se situe l'erreur dans le code HTML. et ca te donnera une idée sur l'utilité de valider ton HTML avant de l'envoyer par mail. (Il existe des filtres genre HTML Purifier)Code:echo urldecode($_POST['Body'])
Commence par un test simple sans CSS avec une seule image.
Donne-nous le code HTML envoyé et ce que tu attends a recevoir dans l'email.
Je viens d'utiliser ton echo. Ce qu'il m'affiche en fait c'est seulement le "dear all," de ma newsletter. Normalement ma newsletter commence par ce dear all,
puis à la ligne s'enchaine les différentes catégories ainsi que les messages associés. C'est ça que je veux récupérer
Et comment tu fait pour inclure les différentes catégories ainsi que les messages associés dans la variable body???
Essai aussi comme ca pour afficher le code HTML comme texte
Code:echo htmlentities(urldecode($_POST['Body']));
Merci de m'avoir aidé j'ai changé mon fusil d'épaule si je puis dire. J'ai trouvé une autre solution beaucoup plus simple. Je la mettrais dès demain sur le forum et j'expliquerais.
En tout cas merci à vous deux de m'avoir aidé comme ça :ccool:
J'ai opté pour la solution qui est de mettre à l'intérieur d'un script javascript et dans une variable l'ensemble de mon code HTML. En faisant ceci j'arrive à récupérer exactement côté PHP ce que je voulais
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 // Variable réutilisé dans la page PHP var bodyCorps ='<HTML><HEAD>'+ '<TITLE>Newsletter AirN@v & Technical Manuals</TITLE>'+ '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />'+ '<style type="text/css">'+ '*{padding: 0px;margin:0px;}'+ 'hr{ visibility: hidden;}'+ '.image{background: transparent url("IMG/ENTETE.gif") no-repeat top center; height: 200px; padding-right: 8px; padding-top:0px;}'+ '.bordureDuHaut{background: transparent url("IMG/BORDURE_haut.gif") no-repeat top; height: 6px;}'+ '.fond{background: transparent url("IMG/FOND_1px.gif") top;height: 569px; font-family:calibri,cambria,arial,candara; color : #000099;}'+ 'p{text-align: center;}'+ '#texte{padding-left:20px; font-size: 130%;}'+ '#texteScrollable{position: relative; width:800;height: 569;overflow :auto; font-size:10pt;}'+ '.bordureDuBas{ background: transparent url("IMG/BORDURE_bas.gif") no-repeat top;height:6px;}'+ '.finDuFond{background: transparent url("IMG/FOND_1px.gif") top;height: 6px;}'+ '#bouton_send{text-align: center;width: 100%;}'+ '.logoAirbus{float: right; width: 100px;'+ 'background: white url("IMG/LOGO_AIRBUS.gif") no-repeat; height: 24px;}'+ '</style></HEAD>'+ '<BODY onload="transfertParamAuPHP();">'+ '<div class="image">'+ '<div align="bottom" class="logoAirbus" ></div>'+ '</div>'+ '<div class="fond" id="texteScrollable">'+ '<div class="bordureDuHaut"></div>'+ '<div id="texte"><p><b>Dear all,</b></p>' // Boucle qui me permet de prévisualiser le contenu de ma Newsletter for(identifiant in opener.tabTemporaire) { // Test permettant de vérifier si les textarea sont vides // s'ils le sont alors le corps de la newsletter n'affichera rien if(opener.tabTemporaire[identifiant]['message'].replace(/(^\s*)|(\s*$)/g,"") != "") { bodyCorps=bodyCorps+'<font color="#000066"><b><br/>'+opener.tabTemporaire[identifiant]['name']+'</b></font>'+" :"+'<br/><dd><strong>'+opener.tabTemporaire[identifiant]['message']+'</strong><br/>'; } } bodyCorps=bodyCorps+'</div></div>'; alert(bodyCorps); document.write(bodyCorps); /*****************************************************************************************CODE**************************************************************************************************/ /*****************************************************************************************************************************************************************************************************/ </script> <form method=post name="formpopup"action="email.php"> <div class="finDuFond"> <div class="bordureDuBas"></div> <div id="bouton_send"> <input type="submit" value="Send Newsletter"/> <input type="hidden" name="Email" id="Email"/> <input type="hidden" name="Body" id="Body"/> <input type="button" value="Cancel" onclick="window.close();"/> </div></div> </form></BODY></HTML>
Mais ta variable bodyCorps tu avais dit que c'était du texte HTML+CSS saisie par l'utilisateur, non? ou c'est juste pour tester?
Heu oui sinon à quoi sert de trimballer une variable coté client pour la renvoyer sur le serveur si elle peu etre fixe sur le serveur (variable php ou fichier texte) ... 8O
Non mon HTML n'est pas que ça, il me structure la newsletter et me permet de récupérer un texte rentré dans un textarea par un utilisateur. J'ai du mal m'exprimer désolé
Au niveau du chemin que je dois indiquer pour qu'elles s'affichent, j'ai finalement pu les héberger sur un serveur, mais est ce que cet URL vous paraît bonne
http://techpub.eu.airbus.corp/techpu...IMG/ENTETE.gif
Si on arrive a bien comprendre ton programme, on pourrait te proposer la meilleure solution, en résumé tu a une liste de mails, et une zone text a saisir qui serai du code HTML+CSS (ca peut etre dans un Rich Text Editor genre TinyMCE) et a l'interieur de ce texte y'aurai des balises genre Cher Client [nom] [prenom]
Tu prends ce texte, et tu remplace les balises par leur valeurs (catégories, messages associés)???
Ensuite tu envoi un mail a tout les destinataires par groupe.
Est-ce que j'ai bien compris?
Alors je vais expliquer du mieux que je peux.
J'ai une liste déroulante qui contient X catégories. L'utilisateur peut en choisir une ou plusieurs et une fois sélectionnées elles apparaissent dans une zone prévue à cet effet. En dessous de cette zone se trouve deux textarea le 1 er peut contenir un message par défaut (enregistrer dans une BD) et l'autre permet de rentrer du texte. Un bouton "preview" donne accès à un popup qui est la newsletter qui sera envoyée. Celle ci contient le nom de la catégorie avec le message associé etc.