【发布时间】:2015-07-18 20:21:53
【问题描述】:
我想使用 PHP 邮件功能发送大量电子邮件。电子邮件地址存储在 MySQL 数据库中。有近 30,000 个电子邮件地址。我一次发送一封电子邮件。
60 封电子邮件已正确发送,接下来的所有电子邮件都将被跳过。我正在使用 godaddy 主机发送电子邮件。以下是我正在使用的代码
<?php
$con1=mysqli_connect("subscibe","subscibe","pw","subscibe");
$subject = $_POST['subject'];
$message = $_POST['message'];
$getusers = mysql_query("SELECT * FROM subscibe.emaillist");
$email_from = "email@gmail.com";
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
while($result = mysql_fetch_array($getusers)) {
$emailaddress = $result['Emailaddresses'];
mail($emailaddress,$subject,$message,$headers);
//Add email address to temp table
$sqlq="INSERT INTO subscibe.temp VALUES ('$emailaddress')";
if (!mysqli_query($con1,$sqlq)) {
die('Error: ' . mysqli_error($con1));
}
}
echo "Emails are sent"
?>
【问题讨论】:
-
专用服务器还是共享服务器?也有专用 IP 吗?
-
godaddy 将您限制在可以发送的数量,如果您想发送那么多电子邮件,您将需要使用商业电子邮件服务器,例如 mailchimp(如果它是新闻通讯类型),或者 mandrill(如果它是交易电子邮件) .
-
另外,如果您想发送 30k 封电子邮件,我建议您为此使用专门的服务...自己管理此问题的坏主意,您将在第一次发送时被视为垃圾邮件发送者。跨度>
-
我也会推荐 mailchimp。