Schrift
[thread]5654[/thread]

HTML Mail verschicken



<< >> 5 Einträge, 1 Seite
ak47
 2003-08-25 14:14
#79579 #79579
User since
2003-08-11
24 Artikel
BenutzerIn
[default_avatar]
Hallo,

ich kapiers einfach nicht. Ich habe versucht eine Email zu verschicken mit "Content-Type: multipart/alternative;"
und ich bekomme immer nur den Code zu sehen. Was mach ich falsch?

Hab mir schon den anderen Beitrag durchgelesen, der da ein Attachment an seiner Mail mitschicken wollte und mime:lite ist bestimmt wieder ein Modul das man installieren muss. Habt ihr etwa alle einen eigenen Server?
snadra
 2003-08-25 14:28
#79580 #79580
User since
2003-08-11
265 Artikel
BenutzerIn
[Homepage] [default_avatar]
Yo, habe nen eigenen Server und bin root auf er Arbeit. Aber MIME::Lite ist wirklich etwas das man haben sollte um Mails zu versenden... Zumnindestest wenn man Sachen wie Attachments usw. braucht.
Und um Dir zu helfen können, bräuchte ich eine etwas detailliertere Problembeschreibung. Code? Fehlermeldung.
Aber der Contenttype sollte meiner Ansicht nach multipart/related bzw. gleich einfach text/html heißen. Bin mir was das related angeht gerade nicht 100% sicher...
http://hamburg.pm.org
jeden 2. mittwoch im monat
--
#!/usr/bin/perl -w
$l=join('',map chr,(116,110,105,114,112))if$^T;
!!$$?@_=qw(Jhfg Aabgure Prey Hnpxre):$l=1;
for(@_){eval reverse($l)."'"._(_(_($_))).' \''}
sub _{$_=~y+a-z+n-za-m+and pop}
[E|B]
 2003-08-25 14:29
#79581 #79581
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Hi!
Wenn du HTML Code in der E-Mail haben willst, muss du den Header...

Code: (dl )
Content-type: text/html\n\n


... nehmen.
Bei einer normalen Text E-Mail genügt der Header:

Code: (dl )
Content-type: text/plain\n\n


Willst du Dateien verschicken, muss du auf den Header...

Code: (dl )
Content-Disposition: inline; filename="file.txt"\n\n


...zurückgreifen. Denk aber dran, dass wenn du Dateien mitschicken willst, diese erst mit Base64 zu codieren. Ein entsprechnendes Modul ist MIME::Base64, welches die Datei automatisch konvertiert.
MIME::Lite ist AFAIK nicht in der Standarddistribution von Perl dabei, d.h. du musst es installieren (PPM, CPAN, CPANPLUS,...). Nimm jedoch lieber MIME::Lite, da es im Vergleich zu Sendmail wesentlich benutzerfreundlicher ist.
Ich habe keinen eigenen Server bei mir zu Hause stehen, aber einen gemieteten (bzw. nur den Space *g*).
In ca. 2 Tagen wird mein FAQ Beitrag zum Versand von E-Mail Attachments mit Sendmail fertig sein. Wenn du so lange noch warten kannst...
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
SirLant
 2003-08-25 14:32
#79582 #79582
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Schau dich vllt. mal auf dieser Site um, da findest Erklärungen zum E-Mail Versenden zu genüge
hier klicken
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Dubu
 2003-08-25 15:49
#79583 #79583
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
[E|B
,25.08.2003, 12:29]Hi!
Wenn du HTML Code in der E-Mail haben willst, muss du den Header...

Code: (dl )
Content-type: text/html\n\n


... nehmen.

1.) Nicht, wenn man HTML in einer Mail haben moechte, sondern wenn die Mail nur aus HTML bestehen soll. Davon ist jedoch generell abzuraten, da nicht jeder einen HTML-faehigen MUA benutzt.

2.) Die doppelten Zeilenumbrueche im Code bereiten mir etwas Zahnschmerzen. Wenn jemand das kritiklos abschreibt (was leider schnell passiert), dann hat derjenige evtl. ploetzlich seine Mail-Header geschrottet, weil eine Leerzeile hineinkommt. Schliesslich braucht man bei E-Mails normalerweise ein paar Headerzeilen mehr als bei CGIs. Lieber extra daraufhinweisen, dass am Ende des Headers eine Leerzeile stehen muss.

Auch sollte explizit dazu gesagt werden, dass die entsprechende Zeile nur dann in den Mail-Header gehoert, wenn die gesamte Mail dadurch beschrieben wird; wenn es sich um eine Multipart-Message handelt, steht der jeweilige Content-Type im entsprechenden Part-Header und der Mail-Header enthaelt das o.a. "Content-type: multipart/irgendwas" oder evtl. auch ein "Content-type: message/rfc822", wenn es sich um eine eingebettete Mail handelt.

3.) Wo steht die MIME-Version? Wo steht das Encoding? Das wird ja nicht immer US-ASCII sein.
In dieser Kurzfassung ist eine MIME-Deklaration fast genauso verkrueppelt wie ein von M$-Ausguck produzierter Header.

Quote
Bei einer normalen Text E-Mail genügt der Header:

Code: (dl )
Content-type: text/plain\n\n

Wenn diese Text-E-Mail nur US-ASCII enthaelt, braucht sie gar keinen Content-type Header zu enthalten, da das der Default ist. Wenn das Encoding kein US-ASCII ist, muss das Encoding genannt sein, was hier fehlt. Ausserdem fehlt dann noch das Content-Transfer-Encoding, da man Nicht-7-Bit-Teile entweder encoden oder explizit als 8-Bit deklarieren muss.

Quote
Denk aber dran, dass wenn du Dateien mitschicken willst, diese erst mit Base64 zu codieren.

Wenn man irgendetwas verschicken moechte, was ueber 7-Bit-US-ASCII hinaus geht, sollte man es kodieren (und muss man es deklarieren). Das gilt auch fuer Plaintext. Nicht alle MTAs sind 8-Bit-fest.

Wenn eine Datei als Anhang verschickt wird, bedeutet das normalerweise, dass sie als eigener MIME-Part Bestandteil der Mail ist. Dann muss man bedenken, dass das Encoding der Datei und das Encoding des gesamten E-Mail nicht das Gleiche sind: Wenn ein Teil einer Mail mit einer Datei z.B. Base64-encoded ist und zusaetzlich noch ein Textteil in ISO-8859-1 und quoted-printable Kodierung vorliegt, dann bekommt die Gesamt-E-Mail das "Content-Transfer-Encoding: 7bit" ("8bit" oder "binary" waeren ebenfalls moeglich, da sie Obermengen von 7bit sind, wuerden aber eine unnoetige Einschraenkung beim Transport bedeuten).

Quote
In ca. 2 Tagen wird mein FAQ Beitrag zum Versand von E-Mail Attachments mit Sendmail fertig sein. Wenn du so lange noch warten kannst...

Ich bin gespannt. :-)
<< >> 5 Einträge, 1 Seite



View all threads created 2003-08-25 14:14.