toms38  | Salut à tous,
 j'utilise la classe mime_mail.class.php pour faire cette page, la voici :
  
  Code :
 - <?php
 - require "mime_mail.class.php";
 - /*$nom=$_POST['nomMail'];  
 - $mail=$_POST['mailMail'];  
 - $objet=$_POST['objetMail'];  
 - $message=$_POST['messageMail'];*/
 - $file_name = '../dossier.pdf';
 - @$fp = fopen( $file_name, "r" );
 - if ( $fp ) {
 -   $contenu_fichier = fread( $fp, filesize( $file_name ));
 -  
 -   $mail = new mime_mail();
 -   $mail->from = 'toto';
 -   $mail->subject = 'voilavoilaaaa';
 -   $mail->body = '';
 -   // 'nomdufichier' peut etre un nom complètement différent du fichier réel
 -   $mail->attach(  $contenu_fichier, 'dossier.pdf');
 -   $mail->to = 'supertoms@free.fr';
 -   $mail->send();
 -   echo "c'est fait !";
 - }
 
  |  
 
   Après validation, la page m'affiche ceci :
  
  Code :
 - Notice: Undefined variable: encode in c:\documents and settings\thomas\bureau\stage2\scripts\mime_mail.class.php on line 60
 - c'est fait !
 
  |  
 
   Je recoi bien le mail avec la pièce jointe, mais celle-ci ne s'ouvre pas, et ne s'enregistre pas...        Pour info, voici ma classe mime_mail.class.php :
  
  Code :
 - <?php
 - // ------------------------------------------------------------------------- //
 - // Classe pour l'envoi d'emails avec pièces jointes.                         //
 - // ------------------------------------------------------------------------- //
 - // Auteur: Perrich                                                           //
 - // Email:  perrich@club-internet.fr                                          //
 - // Web:    http://www.frshop.net/                                            //
 - // ------------------------------------------------------------------------- //
 - class mime_mail  {
 -   var $parts;
 -   var $to;
 -   var $from;
 -   var $headers;
 -   var $subject;
 -   var $body;
 -   // constructeur       
 -   function mime_mail() {
 -     $this->parts = array();
 -     $this->to =  "";
 -     $this->from =  "";
 -     $this->subject =  "";
 -     $this->body =  "";
 -     $this->headers =  "";
 -   }
 -   // attache un fichier au message
 -   function attach($message, $name, $ctype = '') {
 -     // type de contenu non defini
 -     if (empty($ctype)) {
 -       // on essaie de reconnaitre l'extension
 -       switch(strrchr(basename($name), "." )) {
 -         case ".gz":   $ctype =  "application/x-gzip"; break;
 -         case ".tgz":  $ctype =  "application/x-gzip"; break;
 -         case ".zip":  $ctype =  "application/zip";    break;
 -         case ".pdf":  $ctype =  "application/pdf";    break;
 -         case ".png":  $ctype =  "image/png";  break;
 -         case ".gif":  $ctype =  "image/gif";  break;
 -         case ".jpg":  $ctype =  "image/jpeg"; break;
 -         case ".txt":  $ctype =  "text/plain"; break;
 -         case ".htm":  $ctype =  "text/html";  break;
 -         case ".html": $ctype =  "text/html";  break;
 -         default:      $ctype =  "application/octet-stream"; break;
 -       }
 -     }
 -     $this->parts[] = array (
 -              "ctype"   => $ctype,
 -              "message" => $message,
 -              "encode"  => $encode,
 -              "name"    => $name
 -     );
 -   }
 -   // fonction utilisee pour contruire le message MIME
 -   // utilisee depuis build_multipart()
 -   function build_message($part) {
 -     $message  = $part["message"];
 -     $message  = chunk_split(base64_encode($message));
 -     $encoding =  "base64";
 -     return( "Content-Type: ".$part[ "ctype"].
 -             ($part[ "name"]? "; name = \"".$part[ "name"]. "\"" :  "" ).
 -             "\nContent-Transfer-Encoding: $encoding\n\n$message\n" );
 -  
 -   }
 -   // compose le message MIME
 -   // utilisee depuis send()
 -   function build_multipart() {
 -     $boundary   =  "b".md5(uniqid(time()));
 -     $multipart  =  'Content-Type: multipart/mixed; boundary = '.$boundary;
 -     $multipart .= "\n\nThis is a MIME encoded message.\n\n--".$boundary;
 -     for ($i = sizeof($this->parts) - 1; $i >= 0; $i--) {
 -       $multipart .= "\n".$this->build_message($this->parts[$i]).'--'.$boundary;
 -     }
 -     return $multipart.=  "--\n";
 -   }
 -   // envoie le message
 -   // derniere fonction a appeler  
 -   function send() {
 -     $mime = 'Subject: '.$this->subject."\n";
 -     // parametres optionnels
 -     if (!empty($this->from))    $mime .=  'From: '.$this->from. "\n";
 -     if (!empty($this->headers)) $mime .= $this->headers. "\n";
 -     if (!empty($this->body))    $this->attach($this->body,  '',  'text/plain');
 -     // entete MIME
 -     $mime .= "MIME-Version: 1.0\n".$this->build_multipart();
 -     // envoi du message
 -     mail( $this->to, $this->subject, '', $mime );
 -   }
 - };
 - ?>
 
  |  
 
   Ca fait 2 jours que je rame, merci d'avance !
     |