我想用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!";
}
我收到“发送的消息!”执行时,但没有收到任何电子邮件。
答案 0 :(得分:0)
由于许多邮件提供商(如AOL和Yahoo)阻止了大量与电子邮件垃圾邮件相关的IP地址,因此您发送电子邮件的用户很可能无法收到邮件。因此,如果您运行此PHP脚本的服务器位于其黑名单中,则用户甚至不会将其接收到垃圾邮件文件夹。
检查您的php电子邮件日志。
http://help.yahoo.com/l/us/yahoo/smallbusiness/webhosting/php/php-03.html
此外,如果不是这种情况,请尝试确保您尝试包含的文件存在,并且您正在将正确的路径传递给该文件。就像@Waygood所说,试着看看它是否在没有附件的情况下发送。