2012-04-12 19 views
1

mail()で自動メールを送信しようとしています。いくつかの電子メールを送信しますが、全部ではありません。約50%です。 テストするにはすべての電子メールに同じ電子メールアドレスを使用していますが、一部の電子メールだけが配信されます。PHPメールでメールを送信する()

私はlocalhost 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: [email protected]'."\r\n".'Reply-To: [email protected]'."\r\n".'X-Mailer: PHP/'.phpversion(); 
     sleep(1); 
     mail($to, $subject, $message, $headers); 
     echo $buffer.$index; 
     ob_flush(); 
     flush(); 
    } 
    ob_end_flush(); 
}​ 

ご提案をお願いします。あなたは時にメールのわずかな量を送信する5または10分後に実行するcronジョブを設定することができバルクメールを送信するために

+1

代わりに[phpMailer](http://sourceforge.net/projects/phpmailer/)とSMTPを使用してください。 – Basti

+1

メールサーバーのログには何が表示されますか? – ghoti

+0

あなたの迷惑メールフォルダも確認してください。 –

答えて

1

。どのアドレスに電子メールが送信されたかを記録できるように、テーブルに参照を作成します。全体が小チャンクに分割され、バックグラウンドで実行されるため、SMTPサーバーには大きな負荷はかかりません。 PHP MailerまたはSwiftMailerライブラリを使用する必要があります。

あなたはライブラリを郵送PHPかを選択するためにこの質問を見て持つことができる最善の方法です。

PhpMailer vs. Swiftmailer?

・ホープ、このことができます。