PHP mail function envois un attachement vide

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

willpower
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 143
Inscription: Jeu Mar 15, 2007 20:39

PHP mail function envois un attachement vide

Message le Jeu Juil 02, 2009 19:07

Hello a tous,

J'essaye d'envoyer de mon site un email avec un attachement en php, mais j'ai quelques problemes...

Je recois bien le email, le titre est bon, l'expediteur est bon, l'attachement est la...mais:
1. Il n'y a pas de texte(message) dans mon email
2. L'attachement est vide 0.0kb

Voici mon code, si jamais vous pensez pouvoir m'aider..
Code: Tout sélectionner
<?php

function mail_attachment($filename, $path, $mailto, $from_mail, $from_name, $replyto, $my_subject, $my_message) {
    $file = $path.$filename;
    $file_size = filesize($file);
    $handle = fopen($file, "r");
    $content = fread($handle, $file_size);
    fclose($handle);
    $content = chunk_split(base64_encode($content));
    $uid = md5(uniqid(time()));
    $name = basename($file);
    $header = "From: ".$from_name." <".$from_mail.">\r\n";
    $header .= "Reply-To: ".$replyto."\r\n";
    $header .= "MIME-Version: 1.0\r\n";
    $header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
    $header .= "This is a multi-part message in MIME format.\r\n";
    $header .= "--".$uid."\r\n";
    $header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
    $header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
    $header .= $message."\r\n\r\n";
    $header .= "--".$uid."\r\n";
    $header .= "Content-Type: text/plain; name=\"".$filename."\"\r\n"; // use diff. tyoes here
    $header .= "Content-Transfer-Encoding: base64\r\n";
    $header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
    $header .= $content."\r\n\r\n";
    $header .= "--".$uid."--";
    if (mail($mailto, $my_subject, $my_message, $header)) {
        echo  "mail send ... OK"; // or use booleans here
    } else {
        echo  "mail send ... ERROR!";
    }
}


$my_file = "le_fichier.txt";
$my_path = $_SERVER['DOCUMENT_ROOT']."";
$my_name = "Kheops International";
$my_mail = "admin@monsite.ca";
$my_replyto = "admin@monsite.ca";
$my_subject = "NEW ORDER from customer";
$my_message = "Please find a new web order in attachement.";
mail_attachment($my_file, $my_path, "moi@hotmail.com", $my_mail, $my_name, $my_replyto, $my_subject, $my_message);
?>


Merci
:D
Dernière édition par willpower le Ven Juil 03, 2009 0:12, édité 1 fois.


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 5215
Inscription: Mer Nov 23, 2005 10:38

Re: PHP mail function envois un attachement vide

Message le Jeu Juil 02, 2009 22:23

Quitte a gérer de l'envoi de mail, et pour le faire de manière simple, rien de tel que phpmailer : http://phpmailer.worxware.com/

willpower
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 143
Inscription: Jeu Mar 15, 2007 20:39

Re: PHP mail function envois un attachement vide

Message le Ven Juil 03, 2009 0:15

UsagiYojimbo a écrit:Quitte a gérer de l'envoi de mail, et pour le faire de manière simple, rien de tel que phpmailer : http://phpmailer.worxware.com/


Daccord mais habituellement je devrais etre cappable de le faire avec mon code non? J'ai besoins d'inserrer ce code dans oscommerce et donc installer phpmailer me semble un peu compliquer... quelqu'un sais pourquoi mon attachemnt arrive vide?

Merci


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités