Nimm mal für die Umbrüche nur "\n" und NICHT \r\n", auch in den Headern und besonders auch beim Wrappen der base64-codierten Bilder.
define (WRAP_WIDTH, 75); // 75 ist Standard
define (WRAP_END, "\n"); // \r\n ist Standerd, stört aber.$img_emdedded = chunk_split (base64_encode($img),WRAP_WIDTH,WRAP_END);
Das nur mal eben ausgeschnitten aus meiner Lösung, die auch funktioniert... :-)
Ich hatte damals die gleichen Probleme, wie Du sie gerade beschreibst.
Das macht leider in meinem Fall keinerlei Unterschied, wenn ich base64_encode noch diese Parameter fuettere. (Wobei die Bilder ja die ganze Zeit schon in Ordnung sind im Anhang, also die lassen sich einwandfrei oeffnen)
Danke trotzdem!