Ich versuche gerade, eine dynamisch (mit fpdf) generierte PDF direkt per Mail zu verschicken. Das Mail beinhaltet zum einen Teil HTML zum anderen Teil die besagte PDF.
Hier mal ein wenig Code:
- Code: Select all
$to = eine_adresse@provider.de
$boundary = md5(uniqid(time()));
$subject = "Betreffzeile";
$header = "MIME-Version: 1.0";
$header .= "\n";
$header .= "Content-Type: multipart/mixed; boundary=".$boundary;
$header .= "\n\n";
$header .= "This is a multi-part message in MIME format";
$header .= "\n";
$header .= "--".$boundary;
$header .= "\n";
$header .= "Content-Type: text/html";
$header .= "\n";
$header .= "Content-Transfer-Encoding: 8bit";
$header .= "\n\n";
$header .= "<body style=\"font-family:verdana; font-size:12px;\">";
$header .= "\n";
$header .= "Dies ist der Inhalt";
$header .= "\n";
$header .= "</body>";
$header .= "\n";
$header .= "--$boundary";
$header .= "\n";
$header .= "Content-Type: application/octetstream; name=Mailanhang.pdf";
$header .= "\n";
$header .= "Content-Transfer-Encoding: base64";
$header .= "\n";
$header .= "Content-Disposition: attachment; filename=Mailanhang.pdf";
$header .= "\n\n";
$header .= chunk_split(base64_encode($buffer));
$header .= "\n";
$header .= "--$boundary--\n";
mail($to, $subject, '', $header);
Die Variable $buffer entstammt dabei der fpdf-Klasse. Es handelt sich um den generierten Code des PDFs.
Das Problem:
Lass ich das Script laufen, wird die Mail wunderbar, sogar mit Anhang verschickt. Nur lässt sich dieser Anhang nicht öffnen, da dieser gerademal 66 Byte gross ist. Die Variable $buffer, habe ich kontrolliert. Der Code für die PDF ist einwandfrei...
Des Weiteren enthällt die Mail keinen Text, sondern nur den Anhang...
Sieht jemand das Problem?
Danke...