2

因此,我正在为一个好友安装 Wordpress,将表单发送到他的电子邮件地址。我一直在测试邮件功能,并且..好吧,似乎在我测试了一定次数后,它就停止了工作......

我有一个

if( mail( ... ) )
    echo " =) things are workin out all right...";
else
    echo "fuk...";

声明检查邮件是否正在发送.. 一段时间后它停止工作。

有没有设置限制可以设置的邮件数量之类的?我只是发送了太多邮件吗?

现在..在我等了一段时间(比如一天)之后,邮件突然又开始工作了..嗯......

4

1 回答 1

2

一些主机限制了每分钟/小时/天可以发送多少消息。


为了解决这个问题,我设置了第二个 Gmail 帐户以使用PHPMailer从脚本发送消息,然后制作了这个脚本(称为mail.php):

<?php
include_once 'phpmailer/class.phpmailer.php';
function do_mail($from, $name, $to, $subject, $message, $debug = false) {
    $blah = base64_decode('base64-encoded password here');
    $mail = new PHPMailer();
    $mail->IsSMTP();
    if($debug) $mail->SMTPDebug = 2;
    $mail->SMTPAuth = true;
    $mail->SMTPSecure = 'tls';
    $mail->Host = 'smtp.gmail.com';
    $mail->Port = 587;
    $mail->Username = 'username@gmail.com';
    $mail->Password = $blah;
    $mail->SetFrom($from, $name);
    $mail->AddAddress($to, $to);
    $mail->Subject = $subject;
    $body = $message;
    $mail->MsgHTML($body);
    $mail->AltBody = $message;
    if($mail->Send()) {
        return true;
    } else {
        return $mail->ErrorInfo;
    }
}
?>

然后,发送消息:

<?php
include_once 'mail.php';
$result = do_mail('username@gmail.com', 'First Last', 'someone@example.com', 'Subject here', 'message here');
// Or, with debugging:
$result = do_mail('username@gmail.com', 'First Last', 'someone@example.com', 'Subject here', 'message here', true);
// Print the result
var_dump($result);
?>
于 2012-11-23T02:54:13.567 回答