mail(); und PDF Anhang
Steven Binder
- php
Hallo leutz,
ich hab mal wieder ne frage...
folgendes Problem ich möchte über ein PHP Script eine mail verschicken und das mit eigentlich alle Dateiarten die es gibt. Mir würde sogar nur PDF langen. Doch leider wenn ich eine pdf verschicke kommt sie viel zu klein bei mir an und ist natürlich auch kaput ;(...
ich hab echt keine ahnung was ich falsch mache weil ich des MIME Zeugs eh noch nie richtig kapiert habe... folgend mein script:
$anhang_content_type = 'application/pdf';
$dateiname = showfilename($row['datei']);
$datei = 'admin/files/'.showfilename($row['datei']);
$datei_content = fread(fopen($datei,"r"),filesize($datei));
/* Generiere einen Boundary */
$boundary = strtoupper(md5(uniqid(time())));
$mail_header = "From: ".$from_email."\r\n"."Reply-To:".$from_email;
$mail_header .= "\nMIME-Version: 1.0";
$mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
$mail_header .= "\n\nThis is a multi-part message in MIME format";
/* Hier faengt der normale Mail-Text an */
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: text/plain";
$mail_header .= "\nContent-Transfer-Encoding: 8bit";
$mail_header .= "\n\n$secondmailtext";
/* Hier faengt der Datei-Anhang an */
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: $anhang_content_type; name="$dateiname"";
$mail_header .= "\nContent-Transfer-Encoding: ".$anhang_content_type;
$mail_header .= "\nContent-Disposition: attachment; filename="$dateiname"";
$mail_header .= "\n\n$datei_content";
/* Gibt das Ende der eMail aus */
$mail_header .= "\n--$boundary--";
/* Sende eMail und gebe Fehler bzw. Bestaetigung aus */
mail($row['email'],$secondmailbetreff,"",$mail_header);
die $row['blabla'] werden natürlich vorher abgerufen.
also ich freu mich auf eure kommentare ;)
Gruß Steven
ach falls jemand meckert *fg*
http://forum.de.selfhtml.org/archiv/2002/7/16146/#m90342
hab ich schon gelesen ;) und hat mir nixt gebracht ;()
Gruß Steven
lach ok wer lesen kann ist im vorteil :)
bei mir hat einfach noch folgendes dazu gehört:
$datei_content = chunk_split(base64_encode($datei_content));
Gruß Steven