嗨大家我正在创建一个自动附加csv文件并自动发送到客户端的脚本。我可以附加一个500kb以下的csv文件,但当我将附加一个5mb csv文件。此错误将显示
发送电子邮件时出错:SMTP错误:未接受数据.STP服务器错误:DATA END命令失败详细信息:已拒绝 - 邮件大小超过固定的最大邮件大小。大小:6549 KB,最大大小:1000 KB SMTP代码:554Message未发送!电子邮件
$mailto = 'sample@gmail.com';
$subject = "REPORT";
$email_message = "<div>Monthly Report....</div> ";
$mail = new PHPMailer;
$mail->isSMTP();
$mail->IsHTML(true); // Set mailer to use SMTP
$mail->Host = 'sample.com.ph'; // Specify main and backup SMTP servers
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'sample'; // SMTP username
$mail->Password = 'sample'; // SMTP password
$mail->Port = 25; // TCP port to connect to
$mail->From = 'sample@sample.ph';
$mail->FromName = 'sample';
$mail->addAddress($mailto); // CLIENT
$mail->allowedFiles = array( 'php','doc','csv','xls','zip' );
$mail->maxSize = 70000000;
$mail->message_size_limit = 1000000000000000;
$mail->SetFrom('info@companyname.com', 'new application submitted');
$mail->AddReplyTo("name@yourdomain.com","First Last");
$mail->Subject = "your subject";
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->MsgHTML($email_message);
$address = 'info@companyname.com';
$mail->AddAddress($address, "companyname");
$set_path= $path.'/'.$filename;
$mail->AddAttachment($set_path, $filename, 'base64', 'text/csv');
if (!$mail->Send()) {
/* Error */
echo "Error sending email: ".$mail->ErrorInfo;
echo 'Message not Sent! Email';
} else {
/* Success */
echo 'Sent Successfully! <b> Check your Mail</b>';
}
=============================================== =========================
答案 0 :(得分:0)
标题是否有错误
Rejected - Message size exceeds fixed maximum message size. Size: 6549 KB, Max size: 1000 KB SMTP code: 554Message not Sent! Email
它说你的默认&amp;最大大小只有1000kb,你的消息是6549kb如何发送这封邮件。
解决方案您需要编辑文件最大大小,这可能会有所帮助。
答案 1 :(得分:0)
该错误表示您的电子邮件服务器拒绝了该邮件。这不是您可以用PHP解决的问题。
您可以尝试压缩csv文件或解决电子邮件服务器上帐户中定义的最大电子邮件大小限制。