PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mail mit Anhang per php erzeugen



df8oe
05.01.07, 10:37
Hallo an alle,

das Thema passt nicht ganz hier hinein, aber hier passt es am Besten...


Ich versuche, mit meinem Apachen ein Formular mit eingebettetem Bild per Mail zu verschicken. Das geht auch prinzipiell - bis auf daß das Bild nicht angezeigt wird. Weder inline, noch als Anhang. Es ist einfach "versteckt". Im Quelltext der Mail kann ich es jedoch sehen. Was läuft falsch??

Hier der Quelltext der Mail:

Header:
MIME-Version: 1.0
From: blabla
Reply-To: blubbblubb
Content-Type: multipart/alternative; boundary=bordmark
Content-Disposition: inline


Mailbody:
--bordmark
Content-Type: image/png; name="code.png"
Content-Transfer-Encoding: base64
Content-ID: <1234code4321>
Content-Disposition: inline; filename="code.png"

iVBORw0KGgoAAAANSUhEUgAAAH0AAAA8AQMAAABxSievAAAABl BMVEUAAAD///+l2Z/dAAAAZUlE
QVQokWP4jwp+MPy/UuruEnvx4kXxUtlC8VGBwSuAEXPUELi994zxnO+W2+ECzy33r8 3OunYeLnB4
7/pMv9dX2hEq9k4vXZ+96zySGdv+vs6uQ5jxX+Lc5znfJKnr0lEB CgUAKk/49NHFmtcAAAAASUVO
RK5CYII=

--bordmark
Content-Type: text/plain;charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable

Hier steht der Plaintext...


--bordmark
Content-Type: text/html;charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable

<html>
<body>
<div align="center"><b><h1>Auftrag Nr. 1167993029</h1><img src="cid:1234code4321" align="right"><br>
================================================== =====================</div><br><br>


...hier folgen diverse HTML-Zeilen...

</body></html>

--bordmark



??
df8oe

tschloss
05.01.07, 11:00
Schon mal versucht:
Content-Type: multipart/alternative; boundary="bordmark"

AceTheFace
05.01.07, 11:27
Die einfachste Möglichkeit wäre es wohl eine Mail-Klasse wie http://phpmailer.sourceforge.net/ einzusetzen. Damit ist es kinderleicht sowas zu bewerkstelligen.
Evtl. hilft dir ja auch schon ein Blick in den übersichtlichen Quellcode der Klasse.

Gruß,
Ace

tschloss
05.01.07, 12:07
Die einfachste Möglichkeit wäre es wohl eine Mail-Klasse wie http://phpmailer.sourceforge.net/ einzusetzen. Damit ist es kinderleicht sowas zu bewerkstelligen.
Evtl. hilft dir ja auch schon ein Blick in den übersichtlichen Quellcode der Klasse.

Gruß,
Ace
Das sehe ich eigentlich auch so, aber wenn er immer nur dieselbe Standardmail erzeugt und das schon weitestgehend fertig hat, dann ist das sicher auch valide.

df8oe
06.01.07, 08:38
Ich muß das Ganze mehrfach schachteln, es gibt insgesamt DREI Mailteile mit dementsprechend drei unterschiedlichen "Grenzen". Ich bin noch am Basteln (und am Wundern, wie unterschiedlich die mir zum Testen zur Verfügung stehenden Mailer reagieren)

Wird getestet mit:
Kmail
Thunderbird (Linux)
Outlook Express 6

und den Webmailreadern von GMX

Mein klarer Favorit von all denen: Kmail, dicht gefolgt von Thunderbird...

Danke für eure Tipps!

df8oe

tschloss
06.01.07, 08:59
Ich muß das Ganze mehrfach schachteln, es gibt insgesamt DREI Mailteile mit dementsprechend drei unterschiedlichen "Grenzen".

Ich glaube nicht, dass du das tiefer schachteln musst! Eine Ebene sollte reichen.
Und wenn du zwei Ebenen hast, sollten auch zwei Boundarys reichen.

Hast Du mal die Boundary Definition in " " gesetzt?
Und die Schlussboundary (letzte Verwendung) hat wohl noch zwei trailing "--".

undefined
06.01.07, 09:03
Gehe damit ins mrunix.de Forum.
Binäre Anhänge müssen mit base64_decode() base64_encode() Kodiert werden.

tschloss
06.01.07, 10:06
Gehe damit ins mrunix.de Forum.
Binäre Anhänge müssen mit base64_decode() base64_encode() Kodiert werden.
hat er doch.