簡體   English   中英

SwiftMailer成功發送兩個不同的電子郵件

[英]SwiftMailer sending two different emails in succesion

這不是向兩個收件人發送相同的電子郵件,而是向兩個不同的電子郵件發送一個或兩個公共元素。 我已經進行了各種操作,但是無論我嘗試了什么,都只會發送第一封電子郵件。 這是代碼:

// cancellation confirmation emails
// common subject for both emails
$subject= "Dinner Reservation CANCELLATION";

require_once '../vendor/swiftmailer/swiftmailer/lib/swift_required.php';
$transport = Swift_MailTransport::newInstance();
$mailer = Swift_Mailer::newInstance($transport);
// email to president
$body = "<br>" . $mbr_name . " has cancelled their dinner reservation for the " . $meeting_date . " meeting.<br>They held a reservation for " . $attending . ".";
$message = Swift_Message::newInstance($subject)
    ->setTo(array($pres_email => $pres_name))
    ->setFrom(array('noreply@some.org' => 'Cancellation'))
    ->setBcc('webmaster@some.org')
    ->setBody($body, 'text/html');
$result = $mailer->send($message);

// email to member
$transport = Swift_MailTransport::newInstance();
$mailer = Swift_Mailer::newInstance($transport);
$body = "<br>This is to confirm the dinner reservation for member " . $mbr_name . " has been CANCELLED for the  " . $meeting_date . " meeting.<br><br>To make a new reservation log in to www.some.org and proceed as usual.";
$message = Swift_Message::newInstance($subject . " confirmation." )
    ->setTo(array($mbr_email => $mbr_name))
    ->setFrom(array('noreply@some.org' => 'Some Org Dinner Cancellation'))
    ->setBody($body, 'text/html');
$result = $mailer->send($message);  

也許嘗試這樣的事情。

$info = array(
    'message_president' => "<br>" . $mbr_name . " has cancelled their dinner reservation for the " . $meeting_date . " meeting.<br>They held a reservation for " . $attending . ".",
    'message_member' => "<br>This is to confirm the dinner reservation for member " . $mbr_name . " has been CANCELLED for the  " . $meeting_date . " meeting.<br><br>To make a new reservation log in to www.some.org and proceed as usual."  
);


$transport = Swift_MailTransport::newInstance();

$mailer = Swift_Mailer::newInstance($transport);   

//Create the message for the President
$message = Swift_Message::newInstance()
    ->setSubject("Dinner Reservation CANCELLATION")
    ->setTo(array($pres_email => $pres_name))
    ->setFrom(array('noreply@some.org' => 'Cancellation'))
    ->setBcc('webmaster@some.org')
    ->setBody($info['message_president'],'text/html');

if ($mailer->send($message1){
    $message1_result = true;
}

//Create the message for the Member
$message2 = Swift_Message::newInstance()
    ->setSubject("Dinner Reservation CANCELLATION")
    ->setTo(array($mbr_email => $mbr_name))
    ->setFrom(array('noreply@some.org' => 'Some Org Dinner Cancellation'))
    ->setBody($info['message_member'],'text/html');

if ($mailer->send($message2){
    $message2_result = true;
}

添加

您可能還想通過swiftmailer查看裝飾器插件

http://swiftmailer.org/docs/plugins.html#decorator-plugin

第二加法

我讀到您可能會發現,使用多封電子郵件定義傳輸方式可能會更好,盡管我對此一無所知……但這是兩個示例,第二個示例將一致的結果設置為使用smpt。

$transport = Swift_MailTransport::newInstance('/usr/sbin/sendmail -bs');
$transport = Swift_SmtpTransport::newInstance('smpt.server.tld', 25);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM