php 同时发送两封邮件,php – 为什么SwiftMailer会发送两封电子邮件?

这篇博客讨论了作者在使用PHP的SwiftMailer库发送电子邮件时遇到的问题。代码显示,每次运行都会向同一收件人发送完全相同的邮件。问题可能在于邮件信息的设置或者发送过程。博客中提供了详细的PHP代码片段,包括邮件创建、SMTP Transport配置以及发送过程。作者正在寻求解决方案。
摘要由CSDN通过智能技术生成

我通过

PHP的SwiftMailer库发送电子邮件.我有这个PHP代码从1个发件人向1个电子邮件收件人发送1封电子邮件.这是代码:

$email = /*some email recipient*/;

$sendEmail = /*sender's email*/;

$sendName = /*sender's name*/;

$subject = /*email subject*/;

$body = /*email body*/;

//Create the message

//Create the Transport

$transport = Swift_SmtpTransport::newInstance('/*mail host*/', /*port*/)

->setUsername('/*some username*/')

->setPassword('/*some password*/')

;

//Create the Mailer using your created Transport

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

//Create a message

$message = Swift_Message::newInstance($subject)

->setFrom(array($sendEmail => $sendName))

->setTo($email)

->setBody($body, 'text/html')

;

//Send the message

$result = $mailer->send($message);

每次我运行此代码时,它都会将该发件人的电子邮件发送给该主题和正文的电子邮件.两个完全相同的电子邮件.知道为什么吗?

更新 – 这是完整的代码:

这是整个页面:

ob_start();

session_start();

require_once ('config.php');

require_once 'swiftmailer/lib/swift_required.php';

include ('functions.php');

require_once (MYSQL);

sendConfirmation(12,3,$dbc);

ob_end_flush();

?>

这是在页面中引用的函数(位于functions.php文件中:

function sendConfirmation($signup_id,$app_id,$dbc){

//get signup email and ref code

$q = "SELECT email, ref_code FROM sign_ups WHERE (signup_id='$signup_id')";

$r = mysqli_query ($dbc, $q) or trigger_error("Query: $q\n
MySQL Error: " . mysqli_error($dbc));

$email;

$ref;

if (mysqli_num_rows($r) == 1){

$row = mysqli_fetch_array($r, MYSQLI_ASSOC);

$email = $row['email'];

$ref = $row['ref_code'];

}

//get app info (subject, email body, sender email, sender name)

$q = "SELECT bsignupemail_subj, bsignup_email, email, name, bsignup_url FROM apps WHERE (app_id='$app_id')";

$r = mysqli_query ($dbc, $q) or trigger_error("Query: $q\n
MySQL Error: " . mysqli_error($dbc));

$sendEmail;

$sendName;

$subject;

$body;

$url;

if (mysqli_num_rows($r) == 1){

$row = mysqli_fetch_array($r, MYSQLI_ASSOC);

$url = $row['bsignup_url'];

$sendEmail = $row['email'];

$sendName = $row['name'];

$subject = $row['bsignupemail_subj'];

$body = $row['bsignup_email'];

}

//Create the message

//Create the Transport

$transport = Swift_SmtpTransport::newInstance('/*host*/', /*port*/)

->setUsername('/*username*/')

->setPassword('/*password*/')

;

//Create the Mailer using your created Transport

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

//Create a message

$message = Swift_Message::newInstance($subject)

->setFrom(array($sendEmail => $sendName))

->setTo(array($email))

->setBody($body, 'text/html')

;

//Send the message

$result = $mailer->send($message);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值