我正在PHP中开发我的第一个项目,并且是新的。昨天我需要创建一个功能,向所有网站成员发送新帖子的电子邮件通知。我创建了一个功能,我不知道它有多好。如何使用PHP发送批量电子邮件?
创建一个帖子后,我选择了所有的网站成员在SQL -
包括 “db.php中”;
$query = "SELECT * FROM user";
$runQuery = mysqli_query($db, $query);
这给了我所有的网站会员。然后,我通过数组循环,抓住了这样每个成员的电子邮件ID -
while($users = mysqli_fetch_assoc($runQuery) {
$email = $users['email'];
}
这样,我有每个成员的电子邮件ID。现在在循环中,我可以使用mail()函数向每个站点成员发送电子邮件。
为了更好的编写代码,我编写了在另一个文档中发送电子邮件代码并使用'include()'函数将其链接起来。这样的 -
while($users = mysqli_fetch_assoc($runQuery) {
$email = $users['email'];
include "send_email.php";
}
在哪里发送电子邮件文件$标题,$ EMAIL_SUBJECT,$ EMAIL_BODY并且从这个循环来的$电子邮件。因此,每次循环运行时,都会有新的电子邮件ID,并且邮件将发送到该电子邮件ID。
这段代码在我的本地主机上工作,甚至在生产(hostgator托管),直到有几个网站成员。但是,当我在我的现场网站(拥有超过70个成员)上测试它时,页面停顿至少10秒钟,并返回错误“页面无法正常工作”。
那么这里究竟发生了什么?为什么不能发送电子邮件给更多的用户?
是在实时服务器上的PHP邮件设置?而没有看到服务器日志非常难以调试。尽管如此,包括这样的文件当然不是“更好的代码编写”。更好的办法是构建一个邮件类并使用它。 – DevDonkey
是的PHP邮件设置。我告诉过你它已经成功地向一些会员发送了电子邮件,但是当我通过70多个用户打电话时,它失败了。 – Sandy