[PHP] Email Attachment – PDF In Email Attachment
Posted by in Common
Hi Friends , yesterday I was working with email attachment and I wanted to send pdf file as email attachment but It was giving me so many problems. I have searched so many code for PDF attachment but no one was working So I start tp debug code and finally made working pdf attachment code by pdf attachment in email worked successfully.
Below is code which I have used for PDF email attachment:
<?php $fileatt = "test.pdf"; // Path to the file $fileatt_type = "application/pdf"; // File Type $fileatt_name = "test.pdf"; // Filename that will be used for the file as the attachment $email_from = "noreply@hackingethics.com"; // Who the email is from $email_subject = "Your attached file"; // The Subject of the email $email_message = "Thanks for visiting HackingEthics.com! <br>"; $email_message .= "Thanks for visiting.<br>"; // Message that the email has in it $email_to = "xyz@gmail.com"; // Who the email is to $headers = "From: ".$email_from; $file = fopen($fileatt,'rb'); $data = fread($file,filesize($fileatt)); fclose($file); $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\""; $email_message .= "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-Type:text/html; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $email_message .= "\n\n"; $data = chunk_split(base64_encode($data)); $email_message .= "--{$mime_boundary}\n" . "Content-Type: {$fileatt_type};\n" . " name=\"{$fileatt_name}\"\n" . //"Content-Disposition: attachment;\n" . //" filename=\"{$fileatt_name}\"\n" . "Content-Transfer-Encoding: base64\n\n" . $data .= "\n\n" . "--{$mime_boundary}--\n"; $sent = @mail($email_to, $email_subject, $email_message, $headers); if($sent) { echo "Your email attachment has been Worked."; } else { die("Sorry but the email could not be sent. Please go back and try again!"); } ?>
Replace your email address in $email_to and filename in $fileatt and $fileatt_name.
I am PHP Freelancer and WordPress Developer So If you have any projects related to PHP or any Open Source then contact me.
You can follow any responses to this entry through the RSS 2.0 You can leave a response, or trackback.






Pingback: gospel music videos