Tom: Email mit Anhang und eingebetteten Bildern

Beitrag lesen

Hello,

$mail_header = "";

$b1 = "--b1--".strtoupper(md5(uniqid(time())));

/* Beginne den Mail-Header mit MIME-Mail-Header */
/* (siehe http://www.php3-forum.de/mime_mail.htm) */

$mail_header = "";
$mail_header .= "From: Walter TelserWalter@Telser.org\r\n";
$mail_header .= "Reply-To: Walter@Telser.org\r\n";
$mail_header .= "MIME-Version: 1.0\r\n";
$mail_header .= "Content-Type: multipart/related;  boundary="$b1"\r\n";
$mail_header .= "X-Sender: Walte TelserWalter@Telser.org\r\n";
$mail_header .= "X-Mailer: 4.7.3\r\n";
$mail_header .= "X-Priority: 3\r\n";
$mail_header .= "Return-Path: Walter@Telser.org\r\n\r\n";

hier beginnt der normale Mailbody der Plaintext-Mail

$mail_header .= "This is  a multi-part message in MIME format.\r\n";
$mail_header .= "\r\n$b1\r\n\r\n";

hier kommt nun der Kopf vom Mime-Part 1

$message = "";
$message .= "Content-Type: text/html;\n charset="utf8"\r\n";
$message .= "Content-Transfer-Encoding: quoted-printable\r\n";
$message .= "\r\n";
$message .= "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\n";  ###???
$message .= "<hmtl><body>Das ist eine Email mit Anhang <img src=3D"cid:1"></body></html>\n"; ####???
$message .= "\r\n";
$message .= "$b1\r\n";
$message .= "\r\n";

$file = "../upload/08D28658793748CDBD1F3FC930FE14BB/2F4901007EA6369B474AAF177C147B6F/5BAE12FDB6AAB5DE6BE0AD6BCB75114E_TN.jpg";
$handle = fopen($file, "r");
$attach_content = fread($handle, filesize($file));
fclose($handle);
$attach_content = chunk_split(base64_encode($attach_content),75,"\n");

$message .= "Content-Type: image/jpeg; \r\n";

$message .=  "\tname="test.jpg"\r\n";

$message .= "Content-Transfer-Encoding: base64\r\n";
$message .= "Content-ID: <1>\r\n";
$message .= "\r\n";
$message .= "$attach_content";
$message .= "\r\n$boundary--\r\n";    ## Endemarke nicht vergessen

Und dann mail($to,$subject,'',$mail_header.$message);

Nun hast Du wieder nur eine multipart/related-Mail

da reicht eine Boundary

Das gekapsel macht man ja nur, wenn man verschiedene Typen kombinieren muss.

Vergleich erstmal Deine und meine Version.
Dann sortier auf jeden Fall nochmal. Mitte in der Definition des Bodys sollte man keine Fileoperationen mehr durchführen.

Das kannst Du dank Arrays alles vorher erledigen. Sonst kommst Du durcheinander.

Harzliche Grüße aus http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau