Absatzschaltung mit mail()

helaukoenig

Erfahrenes Mitglied
Mit der mail()-Funktion verschicke ich eine Anmeldebestätigung. Der Übersicht halber soll die Mail natürlich einigermaßen formatiert beim Adressaten ankommen. macht Sie aber nicht, sondern die $message wird ein langer Satz versendet. Wie bekomme ich also eine Absatzschaltung in meine Nachricht rein? Oder kann ich die Mail auch im HTML-Format versenden?

PHP:
if ($submitter != "") {
                         echo "<tr>
                                 <td colspan=5 align=right><a href=
                                 'index.html'><<< zum anfang >>></a>oder <a href='liste.php'><<< zur liste >>></a></td>
                                 </tr>";
                        $subject="Anmeldung zur Fußball-Ferienschule";
                        $message="Liebe Familie ".$famname." die Anmeldung zur ffs war erfolgreich.\n Wir erwarten ".$kindname." dann am 28.03. um 8:45 Uhr auf dem Sportplatz in Bad Sachsa. Gut Sport!";
                        $absender="Thomas Kügler";
                        $reply="ffs@kuegler-info.de";
                        $headers .= 'From:' . $absender . "\n";
                        $headers .= 'Reply-To:' . $reply . "\n"; 
                        $headers .= 'X-Mailer: PHP/' . phpversion() . "\n"; 
                        $headers .= 'X-Sender-IP: ' . $REMOTE_ADDR . "\n"; 
                        $headers .= "Content-type: text/html\n";
                        mail($email, $subject, $message, $headers);
                        $message="Familie ".$famname." hat das Kind ".$kindname." zur ffs angemeldet. Die Mail wurde versandt.";
                        mail($absender, $subject, $message, $headers);
                        }

Vielen Dank1
 
Sehe ich doch richtig, dass du bei $message überhaupt keine Zeilenumbruch eingebaut hast? Dann ist es doch klar, dass nur eine Zeile verschickt wird.
New line erreichst du mit \n. Aber du kannst die Mail auch im html-Format verschicken.
mfg
Marcel
 
Also wie kroschel bereits gesagt hat - wenn du \n (Slash N) in den Text einbaust, brichst du die Zeile um...

Wenn du allerdings HTML Mails verschicken willst (in dem Fall würde ich übrigens deinen Kunden immer anbieten sich die Variante auszusuchen) dann musst du drauf achten, dass du alle Gleichheitszeichen (=) ein "3D" (3D) anfügst, so dass du statt (width="10") dann (width=3D"10") hast - aus irgendeinem misteriösen Grund knallt sonst bei fast allen MailClients die HTML-Ansicht ...!
 
Wenn du den Inhalt der E-Mail als HTML auszeichnest, musst du natürlich auch HTML verwenden. Du kannst den Inhalt aber auch als Klartext („text/plain“) auszeichnen.
 
Vielen Dank für die zahlreichen Tipps. Dann werde ich das mal ausprobieren. Nur eins noch zu meiner Ehrrettung: zumindest im ersten $message ist ein /n drin versteckt. Soweit war ich ja schon.


Danke schön.
 
Zurück