Der Martin: mail() mit mehreren zusätzlichen Headern

Beitrag lesen

Moin,

Problem mit PHPs mail()-Funktion, sobald ich mehr als einen zusätzlichen Header vergeben möchte.

das wundert mich nicht, wenn ich mir deinen Code-Auszug ansehe. ;-)
Womit werden die Headerzeilen nochmal getrennt? Ah ja, mit einer Carriage-Return/Linefeed-Kombination. Was hast du stattdessen? Vier harmlose Zeichen. Ein '/', dann ein 'r', noch ein '/' und ein 'n'. Von Steuerzeichen keine Spur.

Wie werden Steuerzeichen in einem String nochmal maskiert? Ah ja, mit einem vorangestellten Backslash. Wo finde ich den in deinem Beispiel?

Im PHP-Manual stand, dass es mit /r/n manchmal Ärger geben kann, so dass man dann statt dessen /n verwenden sollte.

Nein, das steht da ganz sicher nicht. Weder "/r/n" noch "/n" haben irgendeine besondere Bedeutung.

Ansonsten: Die vorgeschriebene Trennsequenz ist das CR/LF-Pärchen. Da aber manche Systeme automatisch ein LF durch die CR/LF-Kombination ersetzen, führt das in diesem Fall dazu, dass zwei CR auftreten. Das ist aber ungewöhnlich.

Seltsam fand ich aber auch die Anzeigen des Thunderbird. Demnach ist user_2@adresse.de/r/n der Absender.

Klar, die vier Zeichen, die du anhängst, interpretiert der natürlich als zum jeweiligen Feldinhalt gehörend.

user_x"@adresse.de/r/nBcc: user_1@adresse.de

Sicher. Das Trennzeichen zwischen den beiden Headerzeilen hat ja auch gefehlt.

Wo kommt überhaupt das " hinter user_x her?

Das wird mir aus deinen Angaben auch nicht klar. Bist du sicher, dass das nicht *zwei* Anführungszeichen sind?

Und wieso zeigt er die /r/n an?

Weil du diese Zeichen angibst.

So long,
 Martin

--
Denken ist wohl die schwerste Arbeit, die es gibt. Deshalb beschäftigen sich auch nur wenige damit.
  (Henry Ford, amerikanischer Industriepionier)