PHP Mail - 我可以发送两封独特的电子邮件

时间:2013-06-25 15:19:02

标签: php

我正在使用PHPMailer在webform提交时成功发送电子邮件(因此只使用基本的帖子数据,没有mysql数据库或任何查找)。

我需要做的是发送两封单独的电子邮件,一个版本供客户使用,另一个版本发送给客户服务代理商 - 这样当用户完成网络表单时,他们将收到电子邮件的“营销”版本,同时客户服务代理将收到一封电子邮件,其中包含用户提交的详细信息。

请参阅下面我正在使用的内容,但不确定如何最好地实施发送secoind电子邮件?它目前失败,只发送一封电子邮件后脚本退出。

$body = ob_get_contents();
$to = 'removed';
$email = 'removed';
$fromaddress = "removed";
$fromname = "removed";

require("phpmailer.php");

$mail = new PHPMailer();

$mail->From     = $fromaddress;
$mail->FromName = $fromname ;
$mail->AddAddress("email@example.com");


$mail->WordWrap = 50;
$mail->IsHTML(true);

$mail->Subject  =  "Subject";
$mail->Body     =  $body;
$mail->AltBody  =  "This is the text-only body";

if(!$mail->Send()) {
    $recipient = 'email@example.com';
    $subject = 'Contact form failed';
    $content = $body;   
  mail($recipient, $subject, $content, 
    "From: mail@yourdomain.com\r\nReply-To: $email\r\nX-Mailer: DT_formmail");
  exit;

}


//Send the customer version
  $mail=new PHPMailer();
  $mail->SetFrom('email', 'FULLNAME');
  $mail->AddAddress($mail_vars[2], 'sss');

  $mail->Subject    = "Customers email";

  $mail->MsgHTML("email body here");

  //$mail->Send();

2 个答案:

答案 0 :(得分:0)

在客户版本中,您没有像在第一个版本中那样设置电子邮件的属性。例如,您在第一个中使用$mail->From = $fromaddress;,在第二个中使用$mail->SetFrom('email', 'FULLNAME');

因为您实例化了一个新的$mail=new PHPMailer();,所以需要再次设置属性。

答案 1 :(得分:0)

为什么不让PHPMailer TELL 解决问题呢?

if (!$mail->send()) {
   $error = $mail->ErrorInfo;
   echo "Mail failed with  error: $error";
}