{php} problème envoi email fichier joint

Résolu/Fermé
kalimbra Messages postés 469 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 7 octobre 2014 - 20 nov. 2009 à 07:17
kalimbra Messages postés 469 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 7 octobre 2014 - 20 nov. 2009 à 08:19
Bonjour,

je suis en train de programmer un script me permettant de m'envoyer des logs compressés via email en fichier attaché..

Le problème c'est que pour le moment je compresse les logs dans le même répertoire que là où se trouvent les logs. Du coup me fichiers joints sont du genre "../Logs/LogLogin.txt".

Quand je m'envois les emails,je les reçois, mais les logs compressés sont inline et pas attachés .Serait ce du au filename du fichier qui comprend le chemin complet ?


$FileCompressed = "../../Logs/LogLoginSite".$Date.".bz2" ;


// Construction de l'entête

$boundary = "-----=".md5(uniqid(rand()));

$header  = "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"$boundary\"\r\n";
$header .= "\r\n";
// Construction du message proprement dit
$msg = $message."\r\n";
// 1ère partie du message
// Le texte
$msg .= "--$boundary\r\n";
$msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\r\n";
$msg .= "Content-Transfer-Encoding:8bit\r\n";
$msg .= "\r\n";
$msg .= "Ceci est un mail avec 1 fichier joint: ".$FileCompressed."\r\n";
$msg .= "\r\n";
// 2ème partie du message
// fichier (attachment)
$file = $FileCompressed;
$fp = fopen($file, "rb");
$attachment = fread($fp, filesize($file));
fclose($fp);
$attachment = chunk_split(base64_encode($attachment));
$msg .= "--$boundary\r\n";
$msg .= "Content-Type: application/x-bzip; name=\"$file\"\r\n";
$msg .= "Content-Transfer-Encoding: base64\r\n";
$msg .= "Content-Disposition: attachment; filename=\"$file\"\r\n";
$msg .= "\r\n";
$msg .= $attachment . "\r\n";
$msg .= "\r\n\r\n";
$msg .= "--$boundary--\r\n";
$destinataire = "t.arnould@ajm.lu";
$expediteur   = "siteweb@ifbl.lu";
$reponse      = $expediteur;
$Subject = "Log : ".$FileCompressed;
mail($destinataire,
     $Subject,
     $msg,
     "Reply-to: $reponse\r\nFrom: $destinataire\r\n".$header);
A voir également:

1 réponse

kalimbra Messages postés 469 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 7 octobre 2014 72
20 nov. 2009 à 08:19
En fin de compte je me réponds à moi même.. pas de "\r \n" mais uniquement des "\n" et ça fonctionne.
0