我过去三天一直试图发送附件邮件。但是不能成功。 实际上附件的问题是我的附件没有扩展名。 这是一个由php脚本打破的大文件,我想通过php脚本逐个发送所有邮件。
当我必须发送一个简单的pdf文件时,它工作正常。
我也尝试过PHPMailer类,但是不能完成这项工作。
这是我正在尝试的代码(它将发送一个名为'pro.zip.001'的代码) -
$mailto = "johan123@gmail.com";
$from_mail = "johan123@gmail.com";
$from_name = "johan";
$path="";
//$filename="NM.pdf";
$filename="pro.zip.001";
$subject = "Test Attachment Email";
$file = $path.$filename;
$file_size = filesize($file);
$handle = fopen($file, "r");
$content = fread($handle, $file_size);
fclose($handle);
$content = chunk_split(base64_encode($content));
$content = file_get_contents($filename);
$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, "Find attach...", $header)) {
echo "Meil sent";
} else {
echo "Meil Not sent";
}
我无法得到的问题是什么。 可能是否有可能。