尝试使用 PHP Mailer 和 BCC 发送邮件
Trying to send mail with PHP Mailer and BCC
我正在使用插件 "PHPMailer-master" 向存储在我的数据库中的地址发送电子邮件。
我将所有地址收集在一个字符串中:
$recipients = "mail@mail.com;mail@mail.com;mail@mail.com"; // OR
$recipients = "mail@mail.com,mail@mail.com,mail@mail.com";
稍后我设置密件抄送:
$mail->addBCC($recipients);
我也设置了我的邮箱来获取邮件:
$mail->addAddress('my@mail.com');
所以,我没有收到任何错误...但是发送的唯一邮件是给我自己的邮件...可能是什么问题?我怎样才能搜索到哪里出了问题?
更新
这就是我创建字符串的方式:
while($row = $stmt->fetch()){
$recipients .= $row['email'] . ";";
}
您不能这样添加邮件。 AddBCC 的文档如下所示 AddBCC($address, $name = "")
.
我建议您使用 foreach 循环或类似的东西:
$recipientsArray = explode(";",$recipients); //The delimiter depends on your string that separated the emails
foreach($recipientsArray as $recipient) {
$mail->addBCC($recipient);
}
更新(关于你的更新)
如何创建数组并不重要。关键是 PHPMailer 函数每次调用只接受一个 BCC。如果你获取它,那么你可以这样做:
while($row = $stmt->fetch()){
$recipients[] = $row["email"];
}
我正在使用插件 "PHPMailer-master" 向存储在我的数据库中的地址发送电子邮件。
我将所有地址收集在一个字符串中:
$recipients = "mail@mail.com;mail@mail.com;mail@mail.com"; // OR
$recipients = "mail@mail.com,mail@mail.com,mail@mail.com";
稍后我设置密件抄送:
$mail->addBCC($recipients);
我也设置了我的邮箱来获取邮件:
$mail->addAddress('my@mail.com');
所以,我没有收到任何错误...但是发送的唯一邮件是给我自己的邮件...可能是什么问题?我怎样才能搜索到哪里出了问题?
更新
这就是我创建字符串的方式:
while($row = $stmt->fetch()){
$recipients .= $row['email'] . ";";
}
您不能这样添加邮件。 AddBCC 的文档如下所示 AddBCC($address, $name = "")
.
我建议您使用 foreach 循环或类似的东西:
$recipientsArray = explode(";",$recipients); //The delimiter depends on your string that separated the emails
foreach($recipientsArray as $recipient) {
$mail->addBCC($recipient);
}
更新(关于你的更新)
如何创建数组并不重要。关键是 PHPMailer 函数每次调用只接受一个 BCC。如果你获取它,那么你可以这样做:
while($row = $stmt->fetch()){
$recipients[] = $row["email"];
}