[英]How can I get recipients for phpmailer from a mysql database?
基本上,我在数据库中有一个表,其中包含姓名和电子邮件地址字段。 如何从数据库中获取此信息并将每个电子邮件地址插入 $mail->AddAddress('xxxxx');
编辑:我的 phpmailer 工作正常,但我什至不确定从表中获取地址并将它们用作收件人。 这是我使用 mysqli 的第一个项目。 任何帮助我指明正确方向的帮助将不胜感激。
方法是从数据库中检索数据并在每个循环中发送一封新电子邮件。 请注意,一些主机需要在电子邮件之间间隔几毫秒。
下面是一个例子:
<?php
$pdo = new PDO('mysql:host=localhost;dbname=mydb', 'root', '');
$sql = "SELECT email FROM users";
foreach ($pdo->query($sql) as $row) {
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 0; // debugging: 1 = errors and messages, 2 = messages only, 0 = nothing
$mail->CharSet = "UTF-8";
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for Gmail
$mail->Host = 'your_email_host';
$mail->Port = 465; // or 587
$mail->IsHTML(true);
$mail->Username = 'your_emailaccount_username';
$mail->Password = 'your_emailaccount_password';
$mail->SetFrom('from@example.com', 'from_name');
$mail->Subject = 'Your Email Subject';
$mail->Body = $body_combined;
$mail->AddAddress($row['email']); // dynamic email from DB with every loop
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.