2

私はWindows用の偽のメールを使用しています。長い間、送信している最初のメールに問題がありました。たとえば、phpを使用しているため、次の行を使用します。

mail("example@gmail.com", "hey", "bye");

このメール機能を使用してページを初めてロードすると、メール機能は false を返しますが、2 回目、3 回目以降は機能しますがしばらくすると、正確な時間がわかりません。 Gmailメールサーバーが「スリープ状態になります」、また、初めてメールを送信するとき、送信するメールが必要な場合は、少し待ってください(最初のメールはfalseを返します)、メールサーバーが次に、メールを送信することを望みました (true を返す)。このtutに従いました。error.log にエラーが表示されます、今、私のGmailアカウントに問題があります(いくつかの設定を変更する必要があります)、とにかく誰かが何か考えを持っていれば、とても感謝しています。

4

1 に答える 1

1

このバグを調査したところ、mail() 関数のバグのようです。1 つの代替方法は、 phpMailer ライブラリをダウンロードして、そこにメール機能を実装することです。もう1つの選択肢は、2回目は常に機能すると言うので、次のとおりです。

if (!mail("example@gmail.com", "hey", "bye"))
    mail("example@gmail.com", "hey", "bye");

つまり、一度失敗すると、もう一度やり直します。Google がスリープから復帰するまでに時間が必要な場合に備えて、300 ミリ秒の一時停止を挿入できます。

于 2013-11-15T16:02:57.340 に答える