如何在没有用户使用PHP了解彼此的电子邮件的情况下向多个用户发送邮件?

时间:2010-10-25 20:15:28

标签: php email

我拥有的是:

$SQL = "SELECT * FROM users";
            $query = mysql_query($SQL) OR die(mysql_error());
            $row = mysql_fetch_array($query);
            $implodeEmail = implode(", ", $row['paypal']);
            $mailTo = "noreply@" . $_SERVER['HTTP_HOST'];
            $mailSubject = $bootTitle;
            $mailMessage = $_POST['massemail'];
            $mailHeaders =  "From: noreply@" . $_SERVER['HTTP_HOST'] . "\r\n" .
                            "Reply-To: noreply@" . $_SERVER['HTTP_HOST'] . "\r\n" .
                            "X-Mailer: PHP/" . phpversion() . "\r\n" .
                            "Bcc: " . $implodeEmail;
            if (mail($mailTo, $mailSubject, $mailMessage, $mailHeaders))
            {
                echo "e-Mail successfully sent.";
            }

它成功发送到$ mailTo,但是我想把它发送到每个人的paypal电子邮件,这是行不通的。我想过只是让所有的电子邮件都可见,但我真的不希望这样,而且我不想遍历每一封电子邮件并为每个人发送电子邮件。

思想/帮助?

3 个答案:

答案 0 :(得分:1)

只是一个粗略的想法:

$implodeEmail = implode("; ", $row['paypal']);

或者只是注意到而不是:

$row = mysql_fetch_array($query);
$implodeEmail = implode(", ", $row['paypal']);

应该是:

while($row=mysql_fetch_array($query)) $rows[]=$row['paypal'];
$implodeEmail = implode(", ", $rows);

答案 1 :(得分:0)

如果您在Bcc标头中包含所有地址,则服务器应向每个地址发送一份副本。如果他不这样做,服务器出了问题。查看php.ini邮件配置,并测试您的邮件服务器。是的,你应该使用“;”而不是“,”以破坏地址。

答案 2 :(得分:-1)

尝试phpMailer或SwiftMailer。