我正在使用mail()函数向我的网站用户发送简报,我使用了一个while循环来发送这些电子邮件。该函数似乎工作正常但我需要检查实际发送了多少邮件,以便我可以与我的SQL表进行比较。
基本上,我在While循环中有以下功能。
$mail_result = mail($leMail, $_POST['sujet'], $_POST['message'], $_POST['email']);
如何使用此$ mail_result变量获取计数?
小心; - )
答案 0 :(得分:1)
大多数托管公司对每小时可发送的电子邮件数量有限制。例如,Bluehost每个主机帐户的默认限制为每小时150个。然而,如果您通过支持与他们联系,您可以将该限制提高到每小时750个。
根据您发送电子邮件的方式,最简单的方法是根据mail()响应增加计数。
我没有看到任何sql查询的参考代码。如果你使用sql while循环,我也不确定mail函数中所有$ _POST值的原因。无论如何......
$cnt = 0;
$sql = "your db query";
While($r = mysql_fetch_array($sql)) { // your sql while loop
// fetch your sql data and prepare it
// send the email
$mail_result = mail($leMail, $_POST['sujet'], $_POST['message'], $_POST['email']);
IF ($mail_result) { $cnt++; }
}
echo ("Sent ".$cnt." emails");