Je suis en train d'écrire un petit plugin de messagerie en php pour les informations des utilisateurs et je veux intégrer plusieurs images en encodage base64, le problème est que seule la première image est intégrée. Toute solution ? Tous les chemins sont corrects, et le html est intégré avec succès. Si j'échange l'ordre des images intégrées dans le code, l'image affichée dans le Mail change également, donc les deux sont disponibles, mais elles ne sont pas affichées en même temps.
\n";
$Header.= "X-mailer: PHP/" . phpversion(). "\n";
$Header.= "MIME-Version: 1.0\n";
$Header.= "Content-Type: multipart/related; boundary=\"".$mime_boundary."\"; type=\"text/plain\"\n";
$MailBody = "--".$mime_boundary."\n";
$MailBody.= "Content-Type: Text/HTML; charset=iso-8859-1$EOL";
$MailBody.= "Content-Transfer-Encoding: quoted-printable\n\n";
$MailBody.= file_get_contents("../mail/mail.htm");
$MailBody.= "\n\n";
$MailBody.= "--".$mime_boundary."\n";
$MailBody= str_replace("images/logo.gif", "cid:$CID.$ImgName", $MailBody);
$MailBody= str_replace("images/right2.jpg", "cid:$CID.$ImgNameRight", $MailBody);
$fpr = fopen ($ImageLocationRight, "rb");
$strr = fread ($fpr, filesize ($ImageLocationRight));
$datar = chunk_split(base64_encode($strr));
$content.= "Content-Type: image/jpg\n";
$content.= "Content-ID: <$CID.$ImgNameRight>\n";
$content.= "Content-Transfer-Encoding: base64\n";
$content.= "Content-Disposition: inline; filename=\"$ImgNameRight\"\n\n";
fclose($fpr);
$content.= $datar."\n";
$MailBody.= $content;
$MailBody.= "--".$mime_boundary."--\n";
$fp = fopen ($ImageLocation, "rb");
$str = fread ($fp, filesize ($ImageLocation));
$data = chunk_split(base64_encode($str));
$content = "";
$content.= "Content-Type: image/gif\n";
$content.= "Content-ID: <$CID.$ImgName>\n";
$content.= "Content-Transfer-Encoding: base64\n";
$content.= "Content-Disposition: inline; filename=\"$ImgName\"\n\n";
fclose($fp);
$content.= $data."\n";
$MailBody.= $content;
$MailBody.= "--".$mime_boundary."--\n";
echo $MailBody;
mail($MailTo, $MailToSubject, $MailBody, $Header);
?>