Hi!
Sofern die Betreffzeile aus Benutzereingaben erzeugt wird, ist zu beachten, dass das in der Maildatei ein Header ist, der nur ASCII-Zeichen enthalten darf.
Die Einschränkung im ersten Teil des Satzes besteht nicht. Eine Mail hat auch recht wenig mit einer Datei zu tun. Richtig ist aber, dass für Mail-Header nur ASCII definiert ist.
Der Subject-Header bekommt ein Encoding, Q oder B:
Q und B sind keine Namen für Kodierungen. Besser wäre gewesen, die Namen im Klartext hinzuschreiben und Verweise beizubringen, wo diese Kodierungen erläutert werden.
Subject: =?ISO-8859-1?Q?BYTES_QUOTED_PRINTABLE?=
Subject: =?ISO-8859-1?B?BYTES_BASE64?=
An dieser Stelle ist nicht klar zu erkennen, dass BYTES_QUOTED_PRINTABLE und BYTES_BASE64 Platzhalter für die derart kodierten Texte sein sollen.
Der Message-Body auch, wird im Header deklariert:
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
die Message ist dann auch quoted-printable (als ISO-8859-1).
Die Message _ist_ nicht automatisch so, sondern sie so muss sein/gemacht werden, wenn man diese Content-Transfer-Encoding-Zeile angibt. Aber als Wert kann man auch 8bit statt quoted-printable nehmen und sich die weitere Kodierung sparen. Eine Zeile
MIME-Version: 1.0
schadet auch nicht, ...
Anmerkung: Grundsätzlich darf eine Maildatei 7Bit-Zeichen enthalten. Es mag sein, dass manche Mail-Transfer-Agents auch ISO oder UTF8 durchgehen lassen, aber das ist kein Standart.
... denn das ist der Standard, der das so festlegt. Mittlerweile sollten auch Mail-Server ausgestorben sein, die nur 7-Bit-Inhalte verarbeiten können.
Lo!