IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Question difficile : courriel avec attachement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2006
    Messages : 30
    Par défaut Question difficile : courriel avec attachement
    Bonjour,

    Je dois envoyé un courriel avec du texte plain et aussi, un xml attaché.

    Le code suivant, que j'ai à maintes reprises vérifié, ne fonctionne pas. Je reçois un courriel sans attachement et sans texte

    Aide svp!


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    $xmlReport .= $Array2XML->saveXML();
     
    			$mimePartDelimiter = md5(microtime());
    			$mailHeader  = "MIME-Version: 1.0\r\n";
    			$mailHeader .= "From: hudony@gmail.com\r\n";
    			$mailHeader .= "Reply-To: hudony@gmail.com\r\n";
    			$mailHeader .= "Content-type: multipart/mixed; boundary=\"".$mimePartDelimiter."\"";
     
    			$mailContent = "".$mimePartDelimiter."\r\n";
    			$mailContent .= "Content-Type: text/plain; charset=iso-8859-1; Content-Transfer-Encoding: 7bit\r\n";
    			$mailContent .= $txt_rap;
     
    			$mailContent .= "\r\n".$mimePartDelimiter."\r\n";
    			$mailContent .= "Content-Type: text/xml; name=\"report.xml\" Content-Transfer-Encoding: base64 Content-Disposition: filename=\"report.xml\"\r\n";
    			$mailContent .= chunk_split(base64_encode($xmlReport));
     
    			$mailContent .= "".$mimePartDelimiter."";
     
    			echo $mailHeader."<br><br>".$mailContent;
     
    			mail("hudony@gmail.com", "XML report test", $mailContent, $mailHeader);

  2. #2
    Membre chevronné Avatar de LeGilou
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 488
    Par défaut
    Bonjour,

    Perso, j'utilise la class simplemail.
    Comme son nom l'indique, c'est simple à mettre en oeuvre.
    C'est très bien documenté ici : http://classes.scriptsphp.org/doc.mail

    Gillou

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Décembre 2006
    Messages : 30
    Par défaut
    Citation Envoyé par LeGilou Voir le message
    Bonjour,

    Perso, j'utilise la class simplemail.
    Comme son nom l'indique, c'est simple à mettre en oeuvre.
    C'est très bien documenté ici : http://classes.scriptsphp.org/doc.mail

    Gillou
    Merci pour la suggestion. J'y ai jeté un coup d'oeil et en effet, cette classe semble parfaite pour mes besoins personnels. Malheureusement, ce problème en est un de bureau et ici, on ne peut intégrer n'importe quelle classe (à moins de les vérifier longuement).

    Dans tous les cas, j'ai réussi à trouver la solution à mon problème de code et je tiens ici à la partager avec vous car il s'agissait d'un détail très subtil :

    Extrait du RFC 1341 :

    Thus, a typical multipart Content-Type header field might look like this:

    Content-Type: multipart/mixed;
    boundary=gc0p4Jq0M2Yt08jU534c0p


    This indicates that the entity consists of several parts, each itself with a structure that is syntactically identical to an RFC 822 message, except that the header area might be completely empty, and that the parts are each preceded by the line

    --gc0p4Jq0M2Yt08jU534c0p


    Ainsi, il apparaît que mon problème était dû au fait que j'appelais le séparateur de MIME sans les deux '-'

    En espérant que cette solution puisse en aider plus d'un!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quelques questions pour débuter avec FOP
    Par lr dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 08/04/2006, 14h09
  2. Question sur ASP avec PWS
    Par Teo dans le forum ASP
    Réponses: 3
    Dernier message: 27/10/2005, 09h16
  3. [Requête] Difficile (impossible ?) avec des dates
    Par starch dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/04/2004, 12h26
  4. envoi de mail avec attachement de fichier
    Par GMI3 dans le forum Modules
    Réponses: 2
    Dernier message: 24/09/2003, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo