Moin,
ich versuche eine mail mit einem Anhang (pdf) via php zu verschicken. Dazu gibts ja einiges im netz an codeschnipseln. Ich hab mir dieses hier ausgesucht:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33: | //PDF als Mail-Anhang verschicken.
$file = 'Schmitter.pdf';
$file_name = 'Schmitter.pdf';
$subject= 'Testing';
$from = "meine@mailaddy.here";
$message = 'Dat is ne Testmail';
$boundary = strtoupper(md5(uniqid(time())));
$mail_header = "From:meine@mailaddy.here\n";
$mail_header .= "MIME-Version: 1.0";
$mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
$mail_header .= "\n\nThis is a multi-part message in MIME format -- Dies ist eine mehrteilige Nachricht im MIME-Format";
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: text/plain";
$mail_header .= "\nContent-Transfer-Encoding: 8bit";
$mail_header .= "\n\n$message";
$file_content = fread(fopen($file,"r"),filesize($file));
$file_content = chunk_split(base64_encode($file_content));
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: application/octetstream; name=\"$file_name\"";
$mail_header .= "\nContent-Transfer-Encoding: base64";
$mail_header .= "\nContent-Disposition: attachment; filename=\"$file_name\"";
$mail_header .= "\n\n$file_content";
$mail_header .= "\n--$boundary--";
// Mail absenden
if(mail("meine@mailaddy.here",$subject,$message,$mail_header))
{
echo 'OKAY ';
}
else
{
echo 'No work ';
} |
Die Mail kommt an, aber leider nur mit einem winzigen Teil des Anhangs. Es sind ~ 700 Byte, sollten aber 57 KB sein.
Mein System ist ein win2k Rechner mit PHP Version 4.2.2. smtp und sendmail_from is in der ini okay! Es geht wie gesagt nur um den Anhang.
Wenn ich das script 1:1 auf riekes server lege gehts natürlich (war ja auch nicht anders zu erwarten
).
Nun meine Frage: Hat jemand eine Idee warum das bei mir nicht geht? Bzw. wo man mal schauen könnte?!?