PHPMailer:使用BCC处理错误
我找不到我的特定场景的答案 我正在开发一个从数据库向邮件列表发送出版物的系统。我已经设法用普通的PHPMailer:使用BCC处理错误,php,phpmailer,Php,Phpmailer,我找不到我的特定场景的答案 我正在开发一个从数据库向邮件列表发送出版物的系统。我已经设法用普通的循环代码完成了 但是,我只想使用loop来添加使用BCC的收件人,如果有人遗漏了错误处理,我还想维护它,比如: foreach($array as $user){ $mail->AddBCC( $user['email'], $user['customerName']); } try{ $mail->AltBody = "To view the message, p
循环代码完成了
但是,我只想使用loop来添加使用BCC
的收件人,如果有人遗漏了错误处理
,我还想维护它,比如:
foreach($array as $user){
$mail->AddBCC( $user['email'], $user['customerName']);
}
try{
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment
$mail->AddReplyTo("noreply@company.com","Company Name");
$mail->SetFrom('noreply@company.com', 'Company Name');
$mail->Subject = "Company| E-Zine";
$mail->MsgHTML($ezineContent);
if(!$mail->Send()) {
//show error msg
} else {
//show successful msg
}
}catch (phpmailerException $e) {
//show error msg
}catch (Exception $e) {
//show error msg
}
$mail->ClearAddresses();
然后我想用一个电话将电子邮件发送给上面添加的所有收件人
是否可以进行错误处理,并查找是否有人因为地址不正确而未收到该邮件???跟踪邮件操作成功与否的常见做法是使用电子邮件的“返回路径”标题
电子邮件及其标题的示例:
Return-Path: server@return.xyz.com
Received: from localhost (mx-1-1 [127.0.0.1])
by mx-1.xyz.com (Postfix) with ESMTP id 3F81556754
for <jbradler@xyz.com>; Wed, 2 May 2012 12:27:18 +0200 (CEST)
To: jbradler@xyz.com
Subject: test mailing
From: Jens <jbradler@xyz.com>
Message-Id: <20120502102717.763ADA88004@xyz.com>
Date: Wed, 2 May 2012 12:27:17 +0200 (CEST)
Hi Folks, ...
据我所知,我们在使用本地sendmail时遇到了问题。标头返回路径已替换为本地MTA的某些配置。如果是这种情况,请尝试使用SMTP发送到可用的中继主机。跟踪邮件操作成功的常见做法是使用电子邮件的“返回路径”标题
电子邮件及其标题的示例:
Return-Path: server@return.xyz.com
Received: from localhost (mx-1-1 [127.0.0.1])
by mx-1.xyz.com (Postfix) with ESMTP id 3F81556754
for <jbradler@xyz.com>; Wed, 2 May 2012 12:27:18 +0200 (CEST)
To: jbradler@xyz.com
Subject: test mailing
From: Jens <jbradler@xyz.com>
Message-Id: <20120502102717.763ADA88004@xyz.com>
Date: Wed, 2 May 2012 12:27:17 +0200 (CEST)
Hi Folks, ...
据我所知,我们在使用本地sendmail时遇到了问题。标头返回路径已替换为本地MTA的某些配置。如果是这种情况,请尝试使用SMTP发送到可用的中继主机。我感谢您的回答。但是,我使用的是PHPMailer类,如果有任何使用类似类属性、方法或技巧的解决方案,我将不胜感激。我已经添加了一个如何使用PHPMailer的示例。但是,我感谢您的回答,我正在使用PHPMailer类,如果有使用类似类属性、方法或技巧的解决方案,我将不胜感激。我已经添加了一个如何使用PHPMailer的示例。
/* define domain name for non-delivery reports */
define('RETURN_PATH_DOMAIN', 'return.xyz.com');
/* get current campaign id */
$campaignId = 123;
/* loop recipient list and send email */
foreach ($array as $userId => $user) {
try{
$mail = new PHPMailer();
$mail->HeaderLine('Return-Path', $userId . '-' $campaignId . '@' . RETURN_PATH_DOMAIN);
$mail->To($user['email'], $user['customerName']);
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!";
$mail->AddReplyTo("noreply@company.com","Company Name");
$mail->SetFrom('noreply@company.com', 'Company Name');
$mail->Subject = "Company| E-Zine";
$mail->MsgHTML($ezineContent);
if(!$mail->Send()) {
// show log
} else {
//show successful msg
}
} catch (Exception $e) {
// show error
}
}