Der Martin: Email subject encoding

Beitrag lesen

Hallo,

ich benütze die PHP Funktion mail() und kodiere das Subject so:

$subject = "Test";
$subject = "=?utf-8?Q?=".quoted_printable_encode($subject)."?=";

das ist AFAIS nicht ganz korrekt (siehe RFC 2047, Abschnitt 2 mit Beispielen). Das mittlere '=' gehört da nicht hin.

In Outlook, Pegasus und anderen Mailprogrammen wird das Subject so angezeigt:
Subject: Test

Die sehen vermutlich großzügig über den Fehler hinweg.

In "Ipswich Web Messaging" wird das Subject so angezeigt:
Subject: =?utf-8?Q?=Test?=

Ich kenne "Ipswich Web Messaging" nicht, aber ich würde einfach mal vermuten, dass die Burschen in Ipswich entweder von der Codierung von Header-Feldern in Mails noch nichts gehört haben, oder dabei so pingelig vorgehen, dass ein kleiner Fehler gleich die ganze Decodierung scheitern lässt.

Was mache ich falsch? Und gehört nach dem dritten ? ein = oder nicht? Ich habe da verschiedene Beispiele gefunden.

Im verlinkten RFC ist an dieser Stelle grundsätzlich kein '='.

So long,
 Martin

--
F: Wer waren die ersten modernen Politiker?
A: Die Heiligen drei Könige. Sie legten die Arbeit nieder, zogen teure Klamotten an und gingen auf Reisen.