Text-Mail - die Formatierung klappt nicht

stega

Erfahrenes Mitglied
Hey,

ich habe ein klitzekleines Problem, was bestimmt nur irgendwo hängt, aber ich komm nicht drauf.

Ich möchte mit der php-Funktion mail() eine Text-Mail versenden. Kein html, nur Text.
Dazu gabs im Netz eine kleine Hilfe, was man angeben muss, sodass mein Script jetzt am Ende so aussieht:

PHP:
// hier kommen noch paar Sachen generell vorher

$mailheader .= "Content-Type: text/plain; charset=UTF-8 \r\n 
                    Content-Transfer-Encoding: 7bit \r\n";

$mailheader .= "Message-ID: <" .time(). " noreply@" .$_SERVER['SERVER_NAME']. ">\r\n";
$mailheader .= "X-Mailer: PHP v" .phpversion(). "\r\n\r\n";

mail($empfaenger, htmlspecialchars($betreff), $mailbody, $mailheader);

Für die Mail nimmt er sich ein .txt-Template, was den Inhalt der Mail vorgibt. Das Template sieht u.a. so aus:

Code:
Hallo ###USERVNAME### ###USERNAME###,

Sie wurden soeben von der Verwaltung entsperrt. Die Verwaltung teilt Ihnen Folgendes mit: 
###MSG### 

Bei Fragen wenden Sie sich bitte an die Verwaltung.

Jetzt hab ich das Problem, dass er die Mails absendet, aber keine Formatierung (neue Zeile) berücksichtigt.

Wenn ich \r\n hinten dran schreibe, dann steht da nach jeder Zeile das \r\n.

Deswegen: wie muss ich denn sowohl die .txt speichern (Unicode, UTF-8, ANSI) und wie muss ich sie dann hochladen (als Binär oder ANSI)?

Und: wie muss ich dem Script neue Zeilen ansagen? Mit dem \r\n? Aber wie verhindere ich dann, dass das in der Mail am Ende der Zeile stehen bleibt?

Ich hab jetzt schon alle Möglichkeiten durchkombiniert, komme aber nicht auf nen grünen Zweig.

Vielleicht kann mir hier jemand sagen, was ich machen muss,

vielen Dank schonmal euch!

grüßle
stega
 
Zurück