Forums

The forums ran from 2008-2020 and are now closed and viewable here as an archive.

Home Forums Back End Attaching a File to a Form Re: Attaching a File to a Form

#69325
dcp3450
Participant

I got the form to accept an attachment and send the attachment but if it’s a doc it’s blank:

Code:
$fileatt = $_FILES[‘file’][‘tmp_name’];
$fileattType = $_FILES[‘file’][‘type’];
$fileattName = $_FILES[‘file’][‘name’];
$file = fopen($fileatt,’rb’);
$data = fread($file,filesize($fileatt));
fclose($file);

$semi_rand = md5(time());
$mime_boundary = “==Multipart_Boundary_x{$semi_rand}x”;

$headers = “from: $email”;

$headers .= “nMIME-Version: 1.0n” .
“Content-Type: multipart/mixed;n” .
” boundary=”{$mime_boundary}””;

$content = “Info about user”;

$content = “This is a multi-part message in MIME format.nn” .
“–{$mime_boundary}n” .
“Content-Type: text/plain; charset=”iso-8859-1″n” .
“Content-Transfer-Encoding: 7bitnn” .
$content . “nn”;

$data = chunk_split(base64_encode($data));

$content .= “–{$mime_boundary}n” .
“Content-Type: {$fileattType};n” .
” name=”{$fileattName}”n” .
“Content-Disposition: attachment;n” .
” filename=”{$fileattName}”n” .
“Content-Transfer-Encoding: base64nn” .
$data . “nn” .
“–{$mime_boundary}–n”;

$send = mail( “[email protected]”, “Form”, $content, $headers);
if($send)
header(‘Location: success page’);
else
header(‘Location: fail page’);

The email sends correctly, there is an attachment with the correct name and file type. when it opens it is empty. An image will send with no problem.

I got the tutorial from sitepoint: http://articles.sitepoint.com/article/a … mail-php/5