Précédent   Forum des professionnels en informatique > PHP > Outils
Outils Forum d'entraide sur les outils pour développeurs PHP : EDI, installation, administration... Avant de poster : FAQ outils, toutes les FAQ PHP et les comparatifs
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/12/2010, 12h47   #1
Membre du Club
 
Inscription : octobre 2008
Messages : 91
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : octobre 2008
Messages : 91
Points : 48
Points : 48
Envoyer un message via MSN à ikeabp
Par défaut Pb fonction mail() PHP avec multipart

Bonjour,

En local je travaille sur Wampserver 2.0 (Apache 2.2.8 - Php 5.2.4) lorsque j'utilise ma fonction pour créer un email il est vide et ma pièce jointe en PDF est présente mais ne s'ouvre pas (Si je regarde le code source du mail il y a bien le contenu et la pièce jointe encodée).
Problème que je ne rencontre pas sur le serveur de prod sous Linux Ubuntu.

Ma fonction :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
function sendMail($pTo , $pObjet , $pCorps , $pFichier , $pType , $pNomFichier , $pReply , $pFrom){
        $frontiere = "_parties_".md5(uniqid (rand()));
 
        $mail_mime = "Date: ".date("l j F Y, G:i")."\n";
        $mail_mime .= "MIME-Version: 1.0\n";
        $mail_mime .= "Cc:".$pFrom."\r\n";
 
        $mail_mime .= "Content-Type: multipart/mixed;\n";
        $mail_mime .= " boundary=\"----=$frontiere\"\n\n";
 
        // Le message en texte simple pour les navigateurs qui n'acceptent pas le HTML
        $texte = "This is a multi-part message in MIME format.\n";
        $texte .= "Ceci est un message est au format MIME.\n";
        $texte .= "------=$frontiere\n";
        $texte .= "Content-Type: text/plain; charset=\"UTF-8\"\n";
        $texte .= "Content-Transfer-Encoding: 7bit\n\n";
        $texte .= $pCorps;
        $texte .= "\n\n";
 
        // Le fichier
        $attachement = "------=$frontiere\n";
        $attachement .= "Content-Type: $pType; name=\"$pNomFichier\"\n";
        $attachement .= "Content-Transfer-Encoding: base64\n";
        $attachement .= "Content-Disposition: attachment; filename=\"$pNomFichier\"\n\n";
 
        $fd = fopen( $pFichier, "r" );
        $contenu = fread( $fd, filesize( $pFichier ) );
        fclose( $fd );
        $attachement .= chunk_split(base64_encode($contenu));
 
        $attachement .= "\n\n\n------=$frontiere--\n";
 
        mail($pTo, $pObjet, $texte.$attachement, "Reply-to: $pReply\nFrom:$pFrom\n".$mail_mime);
    }
Quelqu'un à une idée ?
ikeabp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h25.


 
 
 
 
Partenaires

Hébergement Web