net-board.net

Normale Version: Dateianhang mit PHP versenden.
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Dateianhang mit PHP versenden.

Ich habe selber eine ganze Zeit nach so einer Lösung gesucht und gesucht und gesucht ich denke mir mal es geht einigen genau wie mir hier habe ich eine Simple Lösung ich weiß nicht mehr ganz genau woher ichs hatte aber tut ja auch nix zur Sache, ich habe diesen Codeschnipsel erfolgreich getestet mit einer *.html endung.

Man muss diesen Sourcecode dementsprechend anpassen je nachdem was man anhängen will.

[code=php]
<?php
$file = "pfad/ordner/dateiname.endung";
$file_name = anhangname.html;
$from = "form@domain.de";
$to = to@domain.de;
$message = "Hallo 4name,\n Diese eMail wurde automatisch generiert weil ein neuer Plan eingestellt wurde, eine Kopie befindet sich im Anhang \n";
$boundary = strtoupper(md5(uniqid(time())));
$mail_header = "From: Anonymous <$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: $file_name",$message,$mail_header);
?>
[/code]