从未收到附件的PHPMailer

时间:2012-08-16 13:51:42

标签: php phpmailer

我想用phpmailer发送包含附件的电子邮件。

include_once('/home/site/PHPMailer/class.phpmailer.php');

$mail             = new PHPMailer();
$body             = $mail->getFile('contents.html');
$body             = eregi_replace("[\]",'',$body);
$mail->IsSMTP();  // telling the class to use SMTP
$mail->Host     = "smtp.free.fr"; // SMTP server
$mail->IsSendmail(); // telling the class to use SendMail transport

$mail->From       = "name@sub.fr";
$mail->FromName   = "name";

$mail->Subject    = "subject";

$mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test

$mail->MsgHTML($body);

$mail->AddAddress("sub@sub.net", "name");

$mail->AddAttachment("mylist.csv");             // attachment

if(!$mail->Send()) {
  echo "Mailer Error: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}

我收到“发送的消息!”执行时,但没有收到任何电子邮件。

1 个答案:

答案 0 :(得分:0)

由于许多邮件提供商(如AOL和Yahoo)阻止了大量与电子邮件垃圾邮件相关的IP地址,因此您发送电子邮件的用户很可能无法收到邮件。因此,如果您运行此PHP脚本的服务器位于其黑名单中,则用户甚至不会将其接收到垃圾邮件文件夹。

检查您的php电子邮件日志。

http://help.yahoo.com/l/us/yahoo/smallbusiness/webhosting/php/php-03.html

此外,如果不是这种情况,请尝试确保您尝试包含的文件存在,并且您正在将正确的路径传递给该文件。就像@Waygood所说,试着看看它是否在没有附件的情况下发送。