【发布时间】:2012-04-17 16:02:55
【问题描述】:
我正在尝试使用 mail() 发送自动电子邮件。它发送一些电子邮件,但不是全部,大约 50%。 为了测试,我对所有电子邮件使用相同的电子邮件地址,但仍然只有一些被送达。
我正在使用本地 XAMPP。
代码如下:
if ($_POST['sendEmail'] == "SEND Email") {
ob_start();
$buffer = str_repeat(" ", 4096);
$buffer. = "\r\n some HTML \r\n";
set_time_limit(0);
$noEmails = $last - $first + 1;
echo "Emails sent (of $noEmails):";
for ($index = $first; $index <= $last; $index++) {
$to = $email["$index"];
$subject = "Hey {$firstName["
$index "]}!";
$message = "$emailMessage";
$headers = 'From: my_account@gmail.com'."\r\n".'Reply-To: my_account@gmail.com'."\r\n".'X-Mailer: PHP/'.phpversion();
sleep(1);
mail($to, $subject, $message, $headers);
echo $buffer.$index;
ob_flush();
flush();
}
ob_end_flush();
}
请提出您的建议。
【问题讨论】:
-
改用phpMailer 和 SMTP。
-
邮件服务器的日志中显示了什么?
-
在 error.log 中显示类似这样的消息:“12/04/12 11:01:08 : Socket Error # 10060
Connection timed out.”