begin process at 2013 06 19 05:33:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Mail HTML avec image en PJ


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mail HTML avec image en PJ

mercredi 20 décembre 2006 à 16:35:02 | Mail HTML avec image en PJ

Shenron42000

Bonjour,

Voila, ca fait plusieurs jours que je planche dessus et pas moyen d'y arriver.

Le script à pour but de récupérer le code HTML qui provient d'un éditeur WYSIWYG, et de l'envoyer par mail au format HTML avec les images en PJ.

Il faut donc pour ca, remplacer chaque URL par cid : monimage(et un numero).

Voila, le script :

                    $sms = stripslashes($_POST["wysiwyg"]);
                   
                    //En-tête
                    $delimiteur = "-----=".md5(uniqid(rand()));
                    $entete = "MIME-Version: 1.0\r\n";
                    $entete .= "Content-Type: multipart/related; boundary=\"$delimiteur\"\r\n";
                    $entete .= "\r\n";
                    //Message
                    $msg = "Ceci est un message au format MIME 1.0 multipart/mixed.\r\n";
                    //HTML
                    eregi("src=\"(.*).jpg",$sms,$occ);    // Ici je stocke chaque URL du document dans le tableau $occ.
                    $msg .= "--$delimiteur\r\n";
                    $msg .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n";
                    $msg .= "Content-Transfer-Encoding:8bit\r\n";
                    $msg .= "\r\n";
                    $msg .= "<html><body>";
                    for ($i=1;$i<=sizeof($occ);$i++){
                        $sms = str_replace("$occ[$i].jpg","cid:image$i",$sms); // Pour chaque URL je change la source par cid:image et un numéro.
                    }
                    $msg .= $sms;
                    $msg .= "</body></html>\r\n";
                    $msg .= "\r\n";
                    //Attachement
                    for ($i=1;$i<(sizeof($occ));$i++){
                        $fichier = $occ[$i].".jpg";  // Et pour finir j'attache les PJ au mail
                        $fp      = fopen($fichier, "rb");
                        $fichierattache = fread($fp, filesize($fichier));
                        fclose($fp);
                        $fichierattache = chunk_split(base64_encode($fichierattache));

                        $msg .= "--$delimiteur\r\n";
                        $msg .= "Content-Type: application/octet-stream; name=\"image$i.jpg\"\r\n";
                        $msg .= "Content-Transfer-Encoding: base64\r\n";
                        $msg .= "Content-ID: <image$i>\r\n"; // Et leur donne l'ID contenu dans le corps du mail.
                        $msg .= "\r\n";
                        $msg .= $fichierattache . "\r\n";
                        $msg .= "\r\n\r\n";
                    }
                    //Fin
                    $msg .= "--$delimiteur\r\n";

                    mail($destinataire,$sujet,stripslashes($msg),"Reply-to: $reponse\r\nFrom: $expediteur\r\n".$entete);


Voila, si quelqu'un à une bonne idée, merci d'avance parceque moi, je désespère.
jeudi 4 janvier 2007 à 09:27:26 | Re : Mail HTML avec image en PJ
jeudi 24 avril 2008 à 00:27:18 | Re : Mail HTML avec image en PJ

pingoin33

Bonjour,
avant tout, merci pour ton très interressant post ; j'ai à peu près le même problème (en plus simple) et je n'ai pas trouvé gd chose pour le résoudre.

...mais je viens de tomber la dessus : [ Lien ]

=> la dernière occurence d'un 'boundary' (ou délimiteur) doit être - non seulement précédée - mais aussi suivie de la chaine "--"
(je constate bien cette syntaxe dans le code source de mes mails)

donc, dans ton code :
                    //Fin
                    $msg .= "--$delimiteur
--\r\n";

...à tout hasard, si ça peut aider... mais j'espère que ton problème est résolu depuis longtemps !!!
ù


Cette discussion est classée dans : mail, image, html, msg, content


Répondre à ce message

Sujets en rapport avec ce message

mail html + pièce jointes [ par Joule ] ci dessous la fonction de mail ke j'utilise pr le moment (mixe de plusieures sources glaner un peut partout)....serveur web local (apache + mysql + ph de l'HTML avec mail() ? [ par Drazounet ] Salut à tous J'essaie actuellement de faire un petit programme de mailing en PHP à l'aide de la fonction mail().Mais, lorsque j'essaie d'intégrer une Probleme sur l'envoie de mail en html??? [ par Monico9385 ] Bonsoir tout le monde, j'aimerai faire un envoie de mail en html, sauf que j'ai des petits soucis, c'est à dire qu'il m'écrit tout mon mail avec les Mail multiformat vide sous Mail Mac [ par cseagle ] Bonjour, Je viens de développer une application php d'envoi de newsletter multi format (Content-Type: multipart/alternative) Dans les webmails qui n Problème de transfert d'image pendant un upload de fichier html par mail() [ par JeanMi66 ] Salut à tous. J'envoi par la fonction mail() un fichier html contenant du texte et des images. Le fichier figure sur le serveur, les images aussi et Mail HTML --> problème bizarre ... [ par chamallow ] Bonjour,Je sais qu'il n'y a pas longtemps, une question similaire a été posée, notamment sur les entêtes mais je n'arrive plus à mettre la main dessus MAIl [ par GADSN ] bjr,bon voila jai un probleme avec mon site lors de l'envoie d'un e-mail (format html) je reçoit ceuci:Bonjour which Content-Transfer-Encoding: Mail au format HTML [ par Armelkev ] Bonjour, J'ai un problème à l'envoie de mail au format HTML. Mon mail est parfaitement envoyé mais pas au format HTML, plutôt au format texte. Mon co affichage incorecte dans la colonne Expéditeur [ par piere2 ] Bonjour à tous, J'ai un programme d'envoi d'e-mail en PHP qui fonctionne presque parfaitement hormis que les caractères spéciaux s'affiche avec une co fonction header [ par zuddap ] Bonjour a tous j'aurais besoin d'aide, voila le cas est très simple, j'ai un formulaire en html qui pour son traitement fait appel a une page php qui


Nos sponsors


Sondage...

CalendriCode

Juin 2013
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,058 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales