Salut à tous,
J'ai un petit soucis avec une Dedibox. En effet, lorsque j'envoie un mail avec la fonction "mail" de PHP, celui-ci arrive normalement :
En revanche, quand j'envoie des mails en HTML (en suivant ce tuto ou via mon tracker TheBugGenie, les mails arrivent encodés en Base64 :
DQotLS0tLT05MDFjOTEwZjAzMGU4MjA3MDYyMjU1NGMyYmI4MjM0Zg0KQ29udGVudC1UeXBlOiB0
ZXh0L3BsYWluOyBjaGFyc2V0PSJJU08tODg1OS0xIg0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGlu
ZzogYmFzZTY0DQoNClNhbHV0IMODwqAgdG91cywgdm9pY2kgdW4gZS1tYWlsIGVudm95w4PCqSBw
YXIgdW4gc2NyaXB0IFBIUC4NCg0KLS0tLS0tLT05MDFjOTEwZjAzMGU4MjA3MDYyMjU1NGMyYmI4
MjM0Zg0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9IklTTy04ODU5LTEiDQpDb250
ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0DQoNCjxodG1sPjxoZWFkPjwvaGVhZD48Ym9keT48
Yj5TYWx1dCDDg8KgIHRvdXM8L2I+LCB2b2ljaSB1biBlLW1haWwgZW52b3nDg8KpIHBhciB1biA8
aT5zY3JpcHQgUEhQPC9pPi48L2JvZHk+PC9odG1sPg0KDQotLS0tLS0tPTkwMWM5MTBmMDMwZTgy
MDcwNjIyNTU0YzJiYjgyMzRmLS0NCg0KLS0tLS0tLT05MDFjOTEwZjAzMGU4MjA3MDYyMjU1NGMy
YmI4MjM0Zi0tDQo=
Un petit coup de base64 -d me le confirme rapidement.
Avez-vous une idée de pourquoi la fonction mail envoie les mails HTML encodés en Base64 ?
Bonne journée ;) .
# dedibox = tu es root = tu configures toi meme
Posté par NeoX . Évalué à 2.
si ca marche en PHP avec mail()
et que ca ne marche pas depuis ta page html, ou ton buggenie, be faut regarder la configuration de ces derniers.
ex : dans mon CMS je peux lui dire d'envoyer en html ou en txt, en piece jointe ou pas, et probablement en base64 ou pas.
# Au choix...
Posté par ze_lionix (site web personnel) . Évalué à 2.
Le bon point est que mail, la fonction de base, marche....
Tu utilises un soft qui lui te fait de la m.... tu as deux options :
1) Soit tu changes de soft ( pour la fonction mail, ou le pear php-mail... )
2) Soit tu debug le soft
- as tu regardé les header, le content type il est bon ? et le reste du mime ?
- déroule le traitement d'envoie de mail, avec des echo partout !
Fuse : j'en Use et Abuse !
[^] # Re: Au choix...
Posté par Jeoffrey . Évalué à 0.
La fonction "mail" fonctionne quand je l'utilise comme ceci :
mail('moi@gmail.com', 'salut', 'message');
Cependant, dés que j'y inclue du HTML, donc en suivant ce tuto (qui utilise aussi la fonction mail), je reçois les mails en Base64...
Ce tuto, je l'ai testé à plusieurs endroits, et il n'y a que sur ma Dedibox que je les reçois en Base64... Donc la fonction Mail a bien un problème.
Quand je fais un error_log, je constate que au sein de PHP, les variables transmises à la fonction mail sont toujours en clair. C'est dans le traitement de la fonction mail que le mail doit être encodé en Base64 et qu'il n'est jamais décrypté...
Un exemple de mail reçu en Base64 :
On dirait que le header est corrompu. Pourquoi cela ne le fait-il que sur la Dedibox ?
[^] # Re: Au choix...
Posté par zedS . Évalué à 1.
ça aiderait de nous donner ton code exact (plutôt que le tuto dont tu t'es inspiré) et un export des variables que tu envoies à cet object/fonction/page
C'est pas bon ça, tu ne precises peut être pas l'encodage pour les differentes parties du mail, du coup sur ta dedibox la valeur par défaut est base64 (pure suposition ...)
[^] # Re: Au choix...
Posté par Jeoffrey . Évalué à 0.
Concernant le code, je ne l'ai pas modifié, car c'était juste pour réaliser des tests : le code est le même sur mon serveur.
Donc concernant le Content-Transfer-Encoding: BASE64, que mettre à la place ? Dans la configuration actuelle, le serveur à l'air de forcer le Base64, puisque moi je spécifies 8bits...
[^] # Re: Au choix...
Posté par ze_lionix (site web personnel) . Évalué à 2.
Et s'il faut parler erreur "Content-Type: text/html; charset="iso-8859-1"
me parait mieux qu'un content alternative + mime si tu n'as pas de pièce jointe !
Tu dis spécifier du 8 bit mais si tu regardes les header du mail ce n'est pas le cas....
Ton soft a un bug de m... ( je me répète non ? )
Soit tu debug, soit tu fait à ta sauce, soit tu vas pleurer chez le fournisseur du logiciel ( 3 ème option )!
Et si il faut parler tuto :
http://www.vulgarisation-informatique.com/mail.php
Fuse : j'en Use et Abuse !
[^] # Re: Au choix...
Posté par Jeoffrey . Évalué à 0.
Okay, donc j'ai fait des tests. J'ai repris ton lien sur Vulgarisation-informatique.
J'ai repris les codes tels quels.
L'envoi de mail au format texte : OK.
L'envoi de mail au format HTML : OK
L'envoi de mail au formats texte et HTML : Fail...
Le mail au format texte & html m'arrive en Base64...
Pour un peu plus d'infos, voici le mail "brut" :
[^] # Re: Au choix...
Posté par zedS . Évalué à 1.
Copie ton code php stp !
Le mail n'est pas bon c'est sur, mais si on ne sait pas ce que tu envoies a la fonction mail, on peut difficilement t'aider ..
[^] # Re: Au choix...
Posté par Jeoffrey . Évalué à 0.
Voici le code :
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.