PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PDF per mail() versenden


lasso
25.10.2005, 09:55:43
Hallo

Benutze das Script von webmaster-resource (http://www.webmaster-resource.de/tricks/php/mails-mit-anhang-verschicken.php) zum versenden einer PDF-Datei. Den folgenden Teil habe ich also abgeändert:

$header .= "Content-Type: application/pdf; name=$DateinameMail";

Leider kommt das PDF aber nur als ein paar Byte grosse Datei an und Acrobat meint, beschädigte Datei... (nicht korrekt dekodiert...).

Muss sonst noch etwas im Skript angepasst werden, damit es für PDFs klappt?

Danke für die Hilfe!
Grüsse
Lasso

Stevie B.
25.10.2005, 11:55:02
Poste mal den Rest Header-Anweisungen für's Senden.

lasso
25.10.2005, 12:12:35
$file = "file/xxx.pdf";
$fileMail = "xxx.pdf";
$header = "From: info@xxx.xx";
$sep = md5(uniqid(time()));
$header .= "\n";
$header .= "MIME-Version: 1.0";
$header .= "\n";
$header .= "Content-Type: multipart/mixed; boundary=$sep";
$header .= "\n\n";
$header .= "This is a multi-part message in MIME format";
$header .= "\n";
$header .= "--$sep";
$header .= "\n";
$header .= "Content-Type: text/plain";
$header .= "\n";
$header .= "Content-Transfer-Encoding: 8bit";
$header .= "\n\n";
$header .= "$message";
$header .= "\n";
$header .= "--$sep";
$header .= "\n";
$header .= "Content-Type: application/pdf; name=$fileMail";
$header .= "\n";
$header .= "Content-Transfer-Encoding: base64";
$header .= "\n";
$header .= "Content-Disposition: attachment; filename=$fileMail";
$header .= "\n\n";
$filecont = fread(fopen($file, "r"), filesize($file));
$header .= chunk_split(base64_encode($filecont));
$header .= "\n";
$header .= "--$sep--";
mail("$mailabs","$subject","","$header");

Stevie B.
25.10.2005, 12:30:08
Wie wird den die Datei übergeben? Ist die Übergabe denn korrekt? Liegt die Datei auf dem Server oder auf einem Client-Rechner?

lasso
25.10.2005, 13:54:09
Die Datei liegt auf dem Server im Unterordner "file", das sollte also kein Problem darstellen. Beim Versuch erhalte ich im Mail die Datei, einfach scheinbar fehlerhaft und nur ca. 123 B gross. Fehlermeldung Acrobat beim öffnen:

Acrobat konnte "xxx.pdf" nicht öffnen, da der Dateityp nicht unterstützt wird oder die Datei beschädigt ist (z. B. wenn sie als e-mail-Anhang geschickt und nicht korrekt dekodiert wurde).