Re: Email with attachments coming through damaged

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ron Herhuth wrote:

Hi,

I'm trying to send an attachment via email using the following function,
but it keeps coming through damaged.  I am having no trouble emailing the
same attachment using OutLook.  Is there something wrong with the function
I'm using?  The attachment shows up and I'm not getting any errors, but it
just won't open up in Acrobat.

Thanks,
Ron






<?


$email_address = "ron@xxxxxxxxxxxx";
$email_from = "cio.tax@xxxxxxxxxxxx";
$subject = "Testing Email with attachments";
$msg = "Text message shown in email";
$attach_filepath = array("2003_CIO_K1_Memo.pdf");

xmail($email_address,$email_from,$subject,$msg,$attach_filepath);


function xmail($email_address,$email_from,$subject,$msg,$attach_filepath)
{ $b = 0; $mail_attached = ""; $boundary = md5(uniqid(time(),1))."_xmail"; if (count($attach_filepath)>0) { for ($a=0;$a<count($attach_filepath);$a++) { if ($fp = fopen($attach_filepath[$a],"rb")) { $file_name = basename($attach_filepath[$a]); $content[$b] = fread($fp,filesize($attach_filepath[$a])); $mail_attached .= "--".$boundary."\r\n" ."Content-Type: application/pdf; name=\"$file_name\"\r\n" . "Content-Transfer-Encoding: base64\r\n" . "Content-Disposition: attachment; filename=\"$file_name\"\r\n\r\n" .chunk_split(base64_encode($content[$b]))."\r\n"; $b++; fclose($fp); } else { echo "NEIN"; } } $mail_attached .= "--".$boundary." \r\n"; $add_header ="MIME-Version: 1.0\r\nContent-Type: multipart/mixed; boundary=\"$boundary\""; $mail_content = "--".$boundary."\r\n" . "Content-Type: text/plain; charset=iso-8859-1; format=flowed\r\n" . "Content-Transfer-Encoding: 8bit\r\n\r\n" . $msg."\r\n\r\n".
$mail_attached;
return mail($email_address,$subject,$mail_content,"From:
".$email_from."\r\n".$add_header);
} else


           return mail($email_address,$subject,$msg,"From: ".$email_from);
       }
}

?>







I would suggest using a known good solution, such as PEAR's Mail_MIME package.


http://pear.php.net/package/Mail_MIME

--
paperCrane <Justin Patrin>

--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [PHP Database Programming]     [PHP Install]     [Kernel Newbies]     [Yosemite Forum]     [PHP Books]

  Powered by Linux