painkillerpro
Goto Top

Formatierung Email-Variable über mail-Funktion

Es handelt sich hierbei um Variable $eMail, in der einzelne POST-Variablen über die Mail-Funktion verschickt werden.
Mir geht es darum, die $eMail so zu formatieren, das in der Email z.B. Zeilenumbrüche interpretiert werden.
//Variable die über mail-function verschickt wird - diese soll Formatierung bekommen
$eMail = 'Anrede: '.$_POST['anrede'].'        '  
         .'Vorname: '.$_POST['vorName'].'        '  
         .'Nachname: '.$_POST['nachName'].'        '  
         .'E-Mail: '.$_POST['eMail'].'        '  
         .'Betreff: '.$_POST['betreff1'].'        '  
         .'Nachricht: '.$_POST['nachricht'].'        '  
         .''.$_POST['captcha'].'';  

if (@mail("test@xyz.com", "Neue Nachricht vom Kontaktformular", $eMail))  
{
         echo "Ihre Nachricht wurde erfolgreich an uns verschickt, vielen Dank!<br>"  
         ."Sie werden schnellstmöglich eine Antwort von uns erhalten.";  
}
else
{
         echo "E-Mail-Verkehr funktioniert zur Zeit nicht<br>";  
}
Wenn der Mail-Versand erfolgreich war, erhalte ich folgende Ausgabe in meinem Postfach:

Anrede: Frau Vorname: Test Nachname: Person E-Mail: test@testmail.com Betreff: Test4 Nachricht: Test4

Ich möchte aber so formatieren, dass z.b. folgende Mail entsteht:

Anrede: Frau
Vorname: Test
Nachname: Person
E-Mail: test@testmail.com

Betreff: Test4
Nachricht: Test4

Es sollen also in der Variablen $eMail tags für Zeilenumbrüche hinzugefügt werden, die dann auch richtig interpretiert werden.
Ich hab schon versucht, in der Variablen html-tags zu setzen, z.b. <br>, wird aber als Text interpretiert.
Evtl. muss man noch irgendein Zeichensatz mit einfügen, hab aber keine Ahnung, wie das gehen soll! Vielleicht geht es ja auch irgendwie einfacher und ich denk ma wieder um die Ecke ;)??!!

Wäre also für eine Antwort echt dankbar!!

Content-Key: 94360

Url: https://administrator.de/contentid/94360

Printed on: April 24, 2024 at 22:04 o'clock

Member: Lumpi
Lumpi Aug 13, 2008 at 14:57:28 (UTC)
Goto Top
Hallo,

schreib es z.B. doch mal so, das sollte gehen:

schnipp--->  if (eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,4}$",$eMail))  
{
        $wer="From: <$eMail>  

     Betreff: $betreff1
      Name: $nachName, $vorName

     Nachricht: $nachricht\n";  
        mail("hier@deineDomain.com","Kontakt von Webseite",$wer, "FROM: website@deineDoamin.com\r\n");  

        echo "Ihre Nachricht wurde erfolgreich an uns verschickt, vielen Dank!<br>"  
."Sie werden schnellstmöglich eine Antwort von uns erhalten.";  
}
else   <----schnapp

So müßte es gehen....

Gruß
Sven
Member: painkillerpro
painkillerpro Aug 13, 2008 at 15:09:56 (UTC)
Goto Top
versteh ich ni so ganz...

was bezweckst du mit der variable $wer... und wie willst die zeilenumbrüche realisieren??

danke
Member: EvilMoe
EvilMoe Aug 13, 2008 at 15:18:45 (UTC)
Goto Top
So sollte es gehen:
$eMail = 'Anrede: '.$_POST['anrede']."\n"  
.'Vorname: '.$_POST['vorName']."\n"  
.'Nachname: '.$_POST['nachName']."\n"  
.'E-Mail: '.$_POST['eMail']."\n"  
.'Betreff: '.$_POST['betreff1']."\n"  
.'Nachricht: '.$_POST['nachricht']."\n"  
.''.$_POST['captcha'].'';  
Member: painkillerpro
painkillerpro Aug 13, 2008 at 22:09:01 (UTC)
Goto Top
Danke, einfach mitm Newline wird der Zeilenumbruch erzwungen.
Super, danke. Die Lösung kann so einfach sein...

Mfg
painkillerpro