[PHP] Mail-Header-Problem beim Absenden

BartTheDevil89

Devilution Media
ID: 87739
L
2 Mai 2006
3.960
103
Hallo,

ich verschicke über mail() eine Mail. Diese kommt auch an, allerdings kommt eine gewissen Anzahl von Mails in dieser Form zurück:

This is the Postfix program at host domain.de(geändert).

I'm sorry to have to inform you that your message could not be
be delivered to one or more recipients. It's attached below.

For further assistance, please send mail to <postmaster>

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

The Postfix program

<name(geändert)@freenet.de>: host mx.freenet.de[194.97.50.136] said: 550 Syntax
error in header (in reply to end of DATA command)

Es heißt ja, dass freenet meckert, dass ein Fehler im header drin wäre. Der Header wird so zusammengebaut:

PHP:
$header="From: $name <$email>\n";
$header .= "Reply-To: $email\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $REMOTE_ADDR\n";
$header .= "Content-Type: text/plain";

Die Daten sind alle vorhanden, das habe ich überprüft.

Woran könnte das Problem liegen? Wie gesagt, das passiert nur bei manchen Anbietern. Also es kommen auch Mails an. :roll:
 
PHP:
$header="From: $name <$email>\n";
$header .= "Reply-To: $email\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\n";
$header .= "X-Sender-IP: $REMOTE_ADDR\n";
$header .= "Content-Type: text/plain";


Versuch mal:
PHP:
$header="From: $name <$email>".$eol;
$header .= "Reply-To: $email".$eol;
$header .= "X-Mailer: PHP/" . phpversion().$eol;
$header .= "X-Sender-IP: $REMOTE_ADDR".$eol;
$header .= "Content-Type: text/plain".$eol;

Auch wenn das nicht klappt, denke ich schon, dass das Problem irgendwas mit dem EndOfLine zu tun hat. Evtl. auch "\n" weglassen oder "\r" noch hinzufügen.

Grüße

Edit:
Ich Träumer: $eol="\r\n" natürlich.
 
Also mit meiner hatte ich keine Probs bei freenet, evtl. fehlt bei dir beim letzten das \n das er deswegen meckert.

Hier mal meine header:
**code entfernt**
 
Zuletzt bearbeitet:
Versuch mal:
PHP:
$header="From: $name <$email>".$eol;
$header .= "Reply-To: $email".$eol;
$header .= "X-Mailer: PHP/" . phpversion().$eol;
$header .= "X-Sender-IP: $REMOTE_ADDR".$eol;
$header .= "Content-Type: text/plain".$eol;

Auch wenn das nicht klappt, denke ich schon, dass das Problem irgendwas mit dem EndOfLine zu tun hat. Evtl. auch "\n" weglassen oder "\r" noch hinzufügen.

Grüße

Edit:
Ich Träumer: $eol="\r\n" natürlich.

Cool, mit dem \r\n am Ende geht es ohne Probleme. :D

Dankeschön
 
Cool, mit dem \r\n am Ende geht es ohne Probleme. :D

Dankeschön

Mist, will leider noch nicht ganz. :-?

Freenet macht noch Probleme:

$header="From: $mfg <$adminemail>\r\n";
$header .= "Reply-To: $email_from_mail\r\n";
$header .= "X-Mailer: PHP/" . phpversion(). "\r\n";
$header .= "X-Sender-IP: $REMOTE_ADDR\r\n";
$header .= "Content-Type: text/plain\r\n";
mail($mail,"$s_betreff",$message,$header);

So wir das ganze derzeit abgeschickt. Es ist alles vorhanden, kommt überall an, nur eben freenet schickt die Fehler mit der Message "Fehler im header" zurück.