Jump to content

Email w/ file attachment


hdbrandon

Recommended Posts

Based off of: http://www.finalwebsites.com/forums/topic/php-e-mail-attachment-script

 

The script is not 100% functional.  It does send a message, but without an attachment and with random text in the body.

 

screenshot.png

 


function mail_attachment($filename, $path, $mailto, $from_mail, $from_name, $replyto, $subject, $message) {
									    $file = $path.$filename;
									    $file_size = filesize($file);
									    $handle = fopen($file, 'r');
									    $content = fread($handle, $file_size);
									    fclose($handle);
									    $content = chunk_split(base64_encode($content));
									    $uid = md5(uniqid(time()));
									    $name = basename($file);
									    $header = 'From: '.$from_name.' <'.$from_mail.'>\r\n';
									    $header .= 'Reply-To: '.$replyto.'\r\n';
									    $header .= 'MIME-Version: 1.0\r\n';
									    $header .= 'Content-Type: multipart/mixed; boundary=\''.$uid.'\'\r\n\r\n';
									    $header .= 'This is a multi-part message in MIME format.\r\n';
									    $header .= '--'.$uid.'\r\n';
									    $header .= 'Content-type:text/plain; charset=iso-8859-1\r\n';
									    $header .= 'Content-Transfer-Encoding: 7bit\r\n\r\n';
									    $header .= $message.'\r\n\r\n';
									    $header .= '--'.$uid.'\r\n';
									    $header .= 'Content-Type: application/octet-stream; name=\''.$filename.'\'\r\n'; // use different content types here
									    $header .= 'Content-Transfer-Encoding: base64\r\n';
									    $header .= 'Content-Disposition: attachment; filename=\''.$filename.'\'\r\n\r\n';
									    $header .= $content.'\r\n\r\n';
									    $header .= '--'.$uid.'--';
									    if (mail($mailto, $subject, '', $header)) {
									        echo 'mail send ... OK'; // or use booleans here
									    } else {
									        echo 'mail send ... ERROR!';
									    }
						}

						$my_file = "test_upload.jpg";
						$my_path = $_SERVER['DOCUMENT_ROOT'].'contribute/upload/';
						$my_name = 'Name here';
						$my_mail = '[email protected]';
						$my_replyto = '[email protected]';
						$my_subject = 'foobar.com Facebook Submission.';
						$my_message = 'foobar.com Facebook photo submission-attached.';
						mail_attachment($my_file, $my_path, '[email protected]', $my_mail, $my_name, $my_replyto, $my_subject, $my_message);

Link to comment
https://forums.phpfreaks.com/topic/240712-email-w-file-attachment/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.