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-ID: 94360

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

Ausgedruckt am: 25.11.2024 um 18:11 Uhr

Lumpi
Lumpi 13.08.2008 um 16:57:28 Uhr
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
painkillerpro
painkillerpro 13.08.2008 um 17:09:56 Uhr
Goto Top
versteh ich ni so ganz...

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

danke
EvilMoe
EvilMoe 13.08.2008 um 17:18:45 Uhr
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'].'';  
painkillerpro
painkillerpro 14.08.2008 um 00:09:01 Uhr
Goto Top
Danke, einfach mitm Newline wird der Zeilenumbruch erzwungen.
Super, danke. Die Lösung kann so einfach sein...

Mfg
painkillerpro