StefanMuenchen: pdf-dateianhang bei mail

Beitrag lesen

zuerst VIELEN DANK für die schnelle antwort!!!

mein acrobat dürfte keinen fehler haben, da ich ja pdf`s direkt von der festplatte ansehen kann. der fehler kommt nur, wenn ich mir eine mail mit pdf-anhang sende.

folgende script-teile sind für den upload und das versenden zuständig.

array anlegen für select-feld im formular und für email-versand:
################################################################

$contenttypes = array(
   "application/pdf" => array("encoding"=>"8bit","info"=>"PDF-Datei"),
   "application/x-zip-compressed" => array("encoding"=>"base64","info"=>"Komprimiert: ZIP")
      );

EMAIL-FORMULAR:
###############

<td class="ptxt"><!--<INPUT TYPE=checkbox NAME=anhang VALUE="jep">Anhang:  --><input type="hidden" name="MAX_FILE_SIZE" value="300000"><INPUT TYPE=file SIZE=20 NAME=datei class="kontakt"></td>
 </tr>

<tr>
 <td height="50"> </td>
 <td>Bitte senden Sie uns nur komprimierte Zipdateien
 <SELECT NAME=anhang_content_type>

<?
 /*
 Lese aus dem Array $contenttypes mit den MIME-Typen die Daten aus und
 generiere eine Drop-Down-Liste
 */

################################################################################################################
 # nachfolgende script-zeilen freigeben, wenn verschiedene datei-formate zum uploaden freigegeben werden sollen.
 # im augenblick ist nur zip-datei freigegeben!
 ################################################################################################################

reset($contenttypes);
 $key=key($contenttypes);
 while($key != "" || $key=="0") {
 echo "<OPTION VALUE="$key">".$contenttypes[$key][info];
 next($contenttypes);
 $key=key($contenttypes);

}

?>

</SELECT>

MAIL-php
########

/* Codiere Datei ins BASE64-Format, falls noetig */
   if($contenttypes[$anhang_content_type][encoding]=="base64") $datei_content = chunk_split(base64_encode($datei_content));
   else $datei_content = $datei_content;

/* Hier faengt der Datei-Anhang an */
   $mail_header .= "\n--$boundary";
   $mail_header .= "\nContent-Type: $anhang_content_type; name="$dateiname"";
   /* Lese aus dem Array $contenttypes die Codierung fuer den MIME-Typ des Anhangs aus */
   $mail_header .= "\nContent-Transfer-Encoding: ".$contenttypes[$anhang_content_type][encoding];

$mail_header .= "\nContent-Disposition: attachment; filename="$dateiname"";
   $mail_header .= "\n\n$datei_content";