der absolut korrekte mail()-Header

pxlArtizzt

Erfahrenes Mitglied
Hi,

wie lautet der korrekte E-Mail-Header für die Funktion mail()

meiner sieht so aus:
PHP:
	$headers = "From: www.url.de <info@url.de>\r\n";
	$headers .= "MIME-Version: 1.0\r\n";
	$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
	$headers .= "Reply-To: www.url.de <info@url.de>\r\n\r\n";

das Problem: Die Mail kommt nicht korrekt an (1&1 E-Mail Postfächer), HTML wird nicht angezeigt (also ich sehe nur das Quellcodegewusel). Stimmt die Reihenfolge? Ich glaue, ich habe schon alle durch, aber nichts will so richtig. wenn ich den content-type an die erste stelle, wird die HTML zwar korrekt angezeigt, aber der restliche Header erscheint oben in der Nachricht, was auch nicht sein soll.... Woran liegt das?

Vielen Dank für Eure Hilfe!
 
hab's gefunden... wie auch immer ich drauf gekommen bin, \r darainzusetzen.... na jedenfalls war das der Grund für falsch ankommende Mails. Hier nun der korrekte und richtige Header:
PHP:
 $headers = "From: www.url.de <info@url.de>\nMIME-Version: 1.0\nContent-type: text/html; charset=iso-8859-1\nReply-To: www.url.de <info@url.de>\n";

Ciao!
 
Korrekte Mail-Header haben weniger etwas mit PHP zu tun...
Wenn du vollkommen korrekte Header schreiben/versenden möchtest, solltest du ohne irgendwelche "ominösen" Quellen arbeiten und dich direkt an die RFCs wenden.

Das erfordert zwar gute Englisch-Kenntnisse und ein wenig zeitlichen Aufwandt, doch so kommst du schließlich zum absolute korrekten Mail-Header. :-)
 
pxlArtizzt hat gesagt.:
Hi,

wie lautet der korrekte E-Mail-Header für die Funktion mail()

meiner sieht so aus:
PHP:
	$headers = "From: www.url.de <info@url.de>\r\n";
	$headers .= "MIME-Version: 1.0\r\n";
	$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
	$headers .= "Reply-To: www.url.de <info@url.de>\r\n\r\n";

das Problem: Die Mail kommt nicht korrekt an (1&1 E-Mail Postfächer), HTML wird nicht angezeigt (also ich sehe nur das Quellcodegewusel). Stimmt die Reihenfolge? Ich glaue, ich habe schon alle durch, aber nichts will so richtig. wenn ich den content-type an die erste stelle, wird die HTML zwar korrekt angezeigt, aber der restliche Header erscheint oben in der Nachricht, was auch nicht sein soll.... Woran liegt das?

Wenn das Script auf einem Linux-Server läuft, dann könnte es an den Zeilenumbrüchen liegen.

\r\n = Windows
\n = Unix
\r = Mac


Ansonsten guck Dir halt mal den Header von einer HTML-Mail an. Die meisten verschicken i.d.R. auch Multipart-Emails (Plain-Text und HTML) was sowieso besser ist, als NUR HTML zu versenden.
 
Zurück