HTML-E-Mail mit Bild erstellen
Alex
- php
0 Henryk Plötz0 Alex0 Christian Seiler0 Alex0 Henryk Plötz0 Alex0 Henryk Plötz0 Alex
0 Alex
Hallo,
ja, so was in der Art wurde schon öfter gefragt, habe das Archiv, Google & Co. auch bereits befragt. Bin eigentlich auch fast so weit, wie ich es haben möchte, es fehlt nur noch eine Kleinigkeit.
Und zwar wird das Bild als Attachment mitgeschickt, nicht aber direkt eingebunden:
Das Bild-Attachment:
Content-Type: image/jpeg; name="bildname.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="bildname.jpg"
/9j/4AAQSkZJRgABAQEBLAEsAAD/2wBDAAgGBg...
... usw... (Bild als Inline-Grafik)
Der HTML-Teil:
Content-Type: text/html
Content-Transfer-Encoding: 8bit
<img SRC="bildname.jpg">
So geht es nicht. Wenn ich mir eine HTML-Mail mit einem Mail-Client sende wird das Bild auch so eingebunden:
img SRC="cid:fhdfghaV5ftO3z65P">
Was hat es mit dieser "Content-ID" auf sich und wie bekomme ich sie?
Danke & Grüße, Alex
Moin,
Was hat es mit dieser "Content-ID" auf sich und wie bekomme ich sie?
Die musst du selbst vergeben, RFC 2392 sagt dir wie.
Nochmal hallo,
Die musst du selbst vergeben, RFC 2392 sagt dir wie.
...hm, wer oder was auch immer RFC 2392 ist, aber Google kennt ja alles und jeden: http://www.google.de/search?q="RFC+2392"
OK, im ersten Suchergebniss wird, wenn ich's richtig verstanden habe, gesagt, man soll eine Eindeutige ID generieren, dies dem Bild-Teil der E-Mail geben (Content-ID: ...) und kann dann so darauf zugreifen: <img src="cid:...">.
Leider tut das nicht. Hat jemand eine Idee?
Danke & Grüße, Alex
Hallo Alex,
...hm, wer oder was auch immer RFC 2392 ist,
RFC = Request For Comments, das sind die offiziellen Internetstandards wie TCP/IP, HTTP, MIME, etc.
Leider tut das nicht.
Beispiel-Mail zum anschauen? »Tut nicht« ist eine sehr wage Fehlerbeschreibung.
Viele Grüße,
Christian
Hallo Christian,
hier der Mail-Quelltext:
From - Sun May 25 15:51:56 2003
X-UIDL: $M"#!_eA!!ZH/!!"'=!!
X-Mozilla-Status: 0001
X-Mozilla-Status2: 10000000
Return-Path: <wwwrun>
X-Envelope-To: web129p1
Received: (from wwwrun@localhost)
by s02.canserver.net (8.12.9/8.11.6) id h4PDwMkj022723;
Sun, 25 May 2003 15:58:22 +0200
Date: Sun, 25 May 2003 15:58:22 +0200
From: WWW daemon apache <wwwrun>
Message-Id: 200305251358.h4PDwMkj022723@s02.canserver.net
To: name@domain.tld
Subject: Bild
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=144faac30cb28ed03e8f154f6cd00518
X-UIDL: $M"#!_eA!!ZH/!!"'=!!
This is a multi-part message in MIME format
--144faac30cb28ed03e8f154f6cd00518
Content-Type: text/html
Content-Transfer-Encoding: 8bit
E-Mail-Text, bla bla bla... Hier sollte ein Bild sein:<br><img src="cid:695f66be6b7de7890c52ae2b6307bbff">
--144faac30cb28ed03e8f154f6cd00518
Content-Type: image/jpeg; name="che.jpg"
Content-Transfer-Encoding: base64
Content-ID: 695f66be6b7de7890c52ae2b6307bbff
Content-Disposition: attachment; filename="che.jpg"
/9j/4AAQSkZJRgABAQEBLAEsAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
...
Bild-Daten gekürzt
...
oXNZMI6pQLgxeo41imkckSGpDZogewt2UYIKh0RKTdj2olIFU4hzDd3HD13KdoFalO0dxjs6gVMT
E5s3ZQ6IOfMzVKTNI43P/9k=
--144faac30cb28ed03e8f154f6cd00518--
Moin,
Content-ID: 695f66be6b7de7890c52ae2b6307bbff
| Notes: In Internet mail messages, the addr-spec in a Content-ID
| [MIME] or Message-ID [822] header is enclosed in angle brackets
| (<>).
....
| Some Examples
....
| Content-ID: <foo4*foo1@bar.net>
-- RFC 2392, Abschnitt 2
Hallo,
| Notes: In Internet mail messages, the addr-spec in a Content-ID
| [MIME] or Message-ID [822] header is enclosed in angle brackets
| (<>).
....
| Some Examples
....
| Content-ID: <foo4*foo1@bar.net>
-- RFC 2392, Abschnitt 2
...d.h. die Content-ID muss ein bestimmtes Format haben?
Alex
Moin,
...d.h. die Content-ID muss ein bestimmtes Format haben?
Nein, sie muss nur bei der Angabe im Header in <> eingeschlossen werden. Ich krieg' hier regelmäßig GMX-Mail (die bogofilter schon zuverlässig aussortiert ;-) da werden die Bilder mit den Headern
Content-ID: <image1>
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="logo_a.gif"
markiert und im HTML-Code mit <img src="cid:image1"> eingebunden. Ich hab' hier zwar keinen HTML-Mailreader, gehe aber davon aus dass die funktionierendes Zeugs verschicken.
Der Content-Type vom übergeordneten Container ist übrigens multipart/related wie auch in dem Beispiel im RFC. Vielleicht ist das noch ein Grund. Die Content-Disposition ist bei dir auch anders.
Hallo,
ich hab jetzt mal korrektes HTML mit DOCTYPE, Head und Body versendet und nun scheint's zu gehen!
Grüße, Alex
Hallo,
| Notes: In Internet mail messages, the addr-spec in a Content-ID
| [MIME] or Message-ID [822] header is enclosed in angle brackets
| (<>).
...auch mit <...> geht's nicht.