j'essaie de joindre des fichiers à l'envoi d'un mail
j'ai intégré la classe mime_mail.class.php
et l'envoi de la pièce jointe s'effectue bien,
mais à l'ouverture du fichier joint, les données
sont totalement codées !
quelque chose m'a sans doute échappé
si quelqu'un sait d'où vient l'erreur,
merci d'avance
<?php
//-----------------------------------------------
//DECLARE LES VARIABLES
//-----------------------------------------------
$email_expediteur='votre_mail@fai.fr';
$email_reply='email_de_reponse@fai.fr';
$message_texte='Bonjour,'."n\n".'Voici un message au format texte';
//-----------------------------------------------
//MESSAGE TEXTE
//-----------------------------------------------
$message = 'This is a multi-part message in MIME format.'."\n\n";
Il faut savoir que les pièces jointes sont souvent codés en BASE 64 la plupart du temps, si tu veux exploiter ta pièce jointe, il faut d'abord la décoder .
merci pour ta reponse rapide
apparemment c'est mime_mail.class.php qui se charge d'encoder
mais je ne vois pas bien où décoder !!
voila ma page de test d'envoi (je n'ai pas touché à mime_mail.class.php )
<?php
require "mime_mail.class.php";
$fichier= fread(fopen("fichier.doc", "r"), filesize("fichier.doc"));
$mail = new mime_mail();
$mail->to = "
[mailto:xx@yy.fr xx@yy.fr
]"; // Adresse email de reception
$mail->subject = "Test envoi piece jointe"; // Sujet
$mail->body = "Ceci est un test====="; // Corps du message
$mail->from = "
[mailto:xx@yy.fr xx@yy.fr
]"; // Adresse email de l'expediteur (optionnel)
$mail->headers = "Date: "; // Entetes supplementaires (optionnel)
$mail->attach("$fichier", "fichier.doc"); // fichier attache (optionnel)
// envoi du message
$mail->send();
?>
en faite, ce qu'il faut faire, c'est lorsque tu extrait ta pièce jointe dans ton code, c'est à ce moment là que tu dois la décoder, là tu ne me montre que l'envoi.
D'accord, je comprend, quand tu envoi ton mail, il encode la pièce jointe naturellement en BASE 64 y'a de forte chance.
Donc l'erreur vient du faite que Word est incapable de décoder automatiquement l'encodage réalisé lors de l'envoi de ton mail. Il faudrait que tu précise le type "encoding" en BASE 64.
Warning: mail(): SMTP server response: 550 5.7.1 [mailto:xx@yy xx@yy]... Relaying denied. IP name lookup failed [194.250.153.124] in c:\program files\easyphp1-8\www\XXX\pages\mime_mail.class.php on line 73