Bild per Email verschicken

bspainkf36

Erfahrenes Mitglied
Hey,
ich wollte per Mail ein jpg verschicken. Das funktioniert auch soweit ganz gut, nur würde ich gerne das Bild auch noch selbst in der Email anzeigen lassen. Zur Zeit ist es nur im Anhang zu finden.

Code:
$grenze="grenzlinie";
$name_des_bildes="000_0529.jpg";
$headers ="MIME-Version: 1.0\r\n";
$headers.="From: $_SESSION[user_nick] <$user_email>\n";
$headers.="Content-Type: multipart/mixed;\n\tboundary=$grenze\n";
$botschaft.="\n--$grenze\n";
$botschaft.="Content-transfer-encoding: 7BIT\r\n";
$botschaft.="Content-type: text/plain\n\n";
$botschaft.= "Dir wurde ein Bild von $_SESSION[user_nick], registrierter Benutzer auf www.***.de, zugeschickt.\nDu kannst das Bild unter dem folgender Adresse einsehen.\n\nhttp://www.***.de\n\nEr hat dir zusätzlich folgenden Kommentar hinterlassen: \n\n";
$botschaft.=$_POST["comment"];
$botschaft.="\n\n";
$botschaft.="\n--$grenze\n";
$botschaft.="Content-Type: application/octetstream;\n\tname=$name_des_bildes\n";
$botschaft.="Content-Transfer-Encoding: base64\n";
$botschaft.="Content-Disposition: attachment;\n\tfilename=$name_des_bildes\n\n";

$zeiger_auf_datei=fopen("$name_des_bildes","rb");
$inhalt_der_datei=fread($zeiger_auf_datei,filesize("$name_des_bildes"));
fclose($zeiger_auf_datei);
$inhalt_der_datei=chunk_split(base64_encode($inhalt_der_datei));
$botschaft.=$inhalt_der_datei;
$botschaft.="\n\n";
mail("$_POST[empfaenger]","Bild von www.***.de",$botschaft,$headers);

Hat jemand vielleicht eine Idee? Danke für die Hilfe :)

Viele Grüße Kon
 
Erst einmal sollte dir der schematischen Aufbau einer Multipart-Nachricht sein:
Code:
From: <Absender>
To: <Empfänger>
Subject: <Betreff>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="<boundary>"
<weitere Header-Felder zur Beschreibung der Nachricht>

--<boundary>
<Header-Felder des ersten Teilinhalts>

<Inhalt des ersten Teilinhalts>

?

--<boundary>
<Header-Felder des n-ten Teilinhalts>

<Inhalt des n-ten Teilinhalts>

--<boundary>--
Die einzelnen Header-Felder werden durch die so genannte CRLF-Zeichenfolgen (U+000A und U+0009) getrennt; nach jedem Teilinhalt folgen zwei CRLF.

Weitere Informationen zum MIME-Standard, eine detaillierte Erklärung der E-Mail-Header sowie zum Multipart Content Type selbst könnten hierbei ebenfalls hilfreich sein.
 
Zurück