Der Martin: PHP mail mit Angang versenden - will einfach nicht - Bitte Hilfe

Beitrag lesen

Hi,

versuche seit stunden einen PDF - Anhang per mail funktions zu versenden und es will einfach nicht...

Fehler #1: Headerzeilen werden in Mails mit \r\n abgeschlossen, nicht mit einem einfachen \n. Manche Mailserver und viele sendmail-Implementierungen sind da aber großzügig, so dass das nicht unbedingt zum Versagen führen muss.

$Header .= "Content-Transfer-Encoding: base64";

Hier behauptest du, dass der Mail-Body (der in diesem Fall ausschließlich aus dem Anhang besteht, was unanständig ist) base64-codiert ist.

$Dateiinhalt .= fread(fopen($Dateiname, "r"), filesize($Dateiname));

Dann liest du den Dateiinhalt, kopierst ihn uncodiert in eine Variable und schaust ihn nie wieder an.

mail($Empfaenger, $Betreff, "", $Header);

Außerdem trennst du nicht sauber zwischen Mail-Inhalt und Headerzeilen.

Eine Email wird zwar mit Anhang versendet, ...

Nein. Es wird eine Mail versendet, auf deren Umschlag steht: "Dokumente inliegend", aber jemand hat vergessen, die Dokumente auch in den Umschlag zu stecken.

So long,
 Martin

--
Es existiert kein Weg, "für" etwas zu optimieren, sondern nur gegen alles andere.
  (Cheatah)