Gibt es eine Beschränkung bei der Verwendung von php-mail Funktion?
Bin ich mit php und mysql.
Werde ich senden 10k++ (zehn tausend-plus), E-Mails zu aktualisieren, meine Abonnenten, und das ist das erste mal, dass ich dabei bin, um Sie zu senden. Ich verwende php mail-Funktion, die im Grunde hier ist was ich tun werde:
Zunächst die Daten aus der Datenbank:
Select name, email FROM data
Danach, mit while-Schleife zum senden der Daten:
while($r = mysql_fetch_assoc($exe)){
...
if($mail){
echo "success<br>";
} else {
echo "failed<br>";
}
}
echo "Sent all";
Habe ich auch die if.. else-Anweisung, um sicherzustellen, dass jede E-Mail erfolgreich gesendet wurde. Ist es etwas, was ich brauchen, zu kümmern? Ich habe Probleme beim SENDEN von ZU 10K++ - Benutzer?
Gibt es eine Begrenzung der Anzahl von E-Mails, die Sie gesendet?
InformationsquelleAutor bbtang | 2009-10-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bitte beachten Sie diesen Hinweis aus der mail-Dokumentation:
die Verwendung von pear::Mail_Queue, keine E-mail
InformationsquelleAutor Greg
Keine Begrenzung für die Anzahl E-Mails, aber es ist die Frist des PHP-scripts. Finden Sie die max_execution_time, die in Ihr php.ini, in der Regel ist es 20 oder 30 Sekunden. Wenn Sie nicht wissen, verwenden Sie die phpinfo() auf, um es herauszufinden.
Darüber hinaus sollten Sie einige Schritte ausführen, um verhindern, dass Benutzer zu viel E-Mails. Sollten Sie markieren Sie so geschickt, so dass Sie nicht erhalten doppelte Beiträge, wenn Sie versehentlich das Skript zweimal.
Andere als die, sollten Sie beachten, dass php-mail-Funktion ist von Natur aus nicht optimiert alle. Sie könnten versuchen, einige Bibliotheken, wie phpmimemessage oder andere, die Ihnen erlauben, zu einem gewissen Zwischenspeichern, zum Beispiel, unter vielen anderen Funktionen.
Ich habe etwas getan, was sehr viel komplexer, aber ja, ich war mit dieser Bibliothek zu tun Massenmail (Newsletter). Mimemessage ist sehr alt nun, es gibt bessere Bibliotheken, siehe andere Antworten, oder google für Sie. Mein Skript läuft im hintergrund von CLI-jedoch ohne zeitliche Einschränkungen.
InformationsquelleAutor Palantir
Sollten Sie erstellen eine Warteschlange von E-Mails gesendet/fehlgeschlagen, so können Sie versuchen, erneut zu senden fehlgeschlagene versuche und vermeiden re-senden von E-Mails, wenn etwas schief laufen sollte.
Nicht eine Schleife erstellen, zu senden versucht 10k Mails per mail()
Auch, das die meisten wahrscheinlich zu begrenzen Sie getroffen werden, dass der mail-server Ihres ISP oder host.
InformationsquelleAutor Joel L
Können Sie auch wollen, schauen Sie sich die Einrichtung eines "echten" mailing-Listen-tool, wie mailman, oder zumindest mit alias-Gruppen (wenn möglich).
Siehe auch die Fragen auf serverfault: https://serverfault.com/questions/67154/sending-an-email-to-about-10k-users-not-spam, wo PHPlist erwähnt wird, zusammen mit anderen. Und hier - https://serverfault.com/questions/68357/whats-the-best-way-to-send-bulk-email.
InformationsquelleAutor warren
Können Sie pear::Mail_Queue http://pear.php.net/package/Mail_Queue/
Wird es wirklich tun, einen guten job.
InformationsquelleAutor Peter Parker