PHP function code to add an attachment – data to be put into an attached file called $filename, is stored in variable $data ::
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <?php function attach_mail($to, $subject, $message, $header, $filename, $data){ $data = chunk_split(base64_encode($data)); $uid = md5(uniqid(time())); $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/html; 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=\"".basename($filename)."\"\r\n" . "Content-Description: ".basename($filename)."\r\n" . "Content-Disposition: attachment;\r\n" . " filename=\"".basename($filename)."\"; size=".strlen($data).";\r\n" . "Content-Transfer-Encoding: base64\r\n\r\n" . $data . "\r\n\r\n"; $header .= "--".$uid."--"; $ok = @mail($to, $subject, "", $header); if($ok){ return 1; } else { return 0; } } ?> |