mail() mit 2 Dateianhängen

dwex

Erfahrenes Mitglied
Hallo Leute,

stehe wieder mal vor einem ziemlichen Problem bei dem ich mit meiner Logik nicht weiterkomme.

Ich möchte mit einer Mail ZWEI Dateianhänge versenden ich bekomme es aber nur mit einem hin.

Hier mal der Quelltext den ich hab:
PHP:
$file = "$bla.pdf"; 
$file_name = "Dateiname_001.pdf"; 
$from = "meine@mailadressewelcheesnichtgibt.com"; 
$to = "demseine@mailadressewelcheesnichtgibt.com"; 
$boundary = strtoupper(md5(uniqid(time()))); 
$message = "Hier die von Ihnen angeforderten Unterlagen.\n\nWir wünschen Ihnen viel Spass beim mitspielen."; 
$mail_header  = "From:Test <$from>\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($to,"Betreff",$message,$mail_header); 
?>
Kann mir jemand bitte zeigen wie ich hier noch einen Dateianhang dran bringe - ich hätte es schon versucht einfach nochmals die ganze Filegeschichte an den header dran zu hängen (natürlich habe ich auch die ersten beiden zeilen kopiert und unter einer anderen variable den anderen dateinamen gespeichert) aber es wird immer nur das erste file verschickt.

Vielen Dank für eure Hilfe im Voraus!
 
Ich denke es liegt an dem
$mail_header .= "\n--$boundary--";
Die letzten zwei "--" schliessen den Teil ab. Um einen weiteren Anhang anzufügen, sollte dann nur
Code:
$mail_header .= "\n--$boundary";

Dann kommt wieder der Teil mit "Content-Type..".

Erst ganz zum Schluss des Attachment-Teils dann die Zeile mit den zwei "--" am Ende.

Ich habs nicht getestet, aber so sind normalerweise E-Mails mit mehreren Attachments aufgebaut.

Ich hoffe, ich konnte weiterhelfen.
 
Zurück