Newsletter/Massenmailversand

Hallo,

ich will ein Newsletter script schreiben um auf einen Schub 15000 Emails zu versenden. Mir persönlich sind 2 Möglichkeiten bekannt:

  1. 15000x die mail()-Funktion aufrufen. Jedoch gehen auf diese Weiße enorm viele Mails verloren
  2. Einsatz von einem Cronjob der z.B. alle 2 mins 100 Mails versendet.

Gibt es eine andere Möglichkeit eine Newsletter Funktion zu basteln, die etwas besser gelöst ist?

Hast du überhaupt schon überprüft, ob dein Hosting-Anbieter den Massenmailversand begrenzt bzw. ob dein Traffic ausreicht? Wenn ja, dann würde ich es mit einem Cronjob realisieren.

Eine andere Idee wäre, in Confixx z.B. eine Weiterleitung für alle E-Mail Adressen zu erstellen. Nachteil: Man muss jede E-Mail Adresse einzeln eintragen und das ganze ist bestimmt nicht wirklich schön für die Performance xD

hi,

du könntest variante 1 nehmen und am ende ein [phpnet]http://at2.php.net/manual/de/function.sleep.php[/phpnet] einfühgen aber das is auch sicher nicht die beste lösung.
Das is eher ein Denkansatz als eine Lösung

MfG Mario

Ein mail() pro Schleifendurchgang? Ist doch kein Wunder, dass es ewig dauert. Teste einfach wie viele BCCs du hinzufügen kannst, dann sind es schon mal mehr als 100 mail() pro Durchgang weniger.

Wenn deine Seite halbwegs oft aufgerufen wird, dann kannst du auch bei jedem Aufruf der Seite mails verschicken. So mach ich’s.

  • Die Mail werden als Textdateien erzeugt und in ein Verzeichnis geschrieben.
  • Bei jedem Aufruf der Seite prüft das Skript ob Mails versendet werden müssen
  • wenn ja werden x-Mails verschickt und gelöscht.

Du musst dabei allerdings aufpassen, das nicht zwei Skripte das parallel versuchen - deshalb das Verzeichnis locken.

EDIT: Mit BCC geht’s natürlich einfacher, wenn die Mails nicht personalisiert werden müssen

Man muss Newsletter nicht über den Webspace verschicken. Man kann dafür auch Newsletter-Programme wie den Supermailer verwenden. Die schicken ihn gestaffelt (also X Mails pro X Minuten) über deinen Mailprovider raus. Spart Traffic. :wink:

Auch das. Deshalb sind die Rahmenbedingungen interessant.

Bei mir z.b. verschicken die User Newsletter, allerdings nicht 15.000 Stück. Da wäre eine Desktop Anwendung sicher eine Überlegung, zumal ja auch noch ein Haufen Verwaltungsaufwand dazu kommt. Bei der Anzahl musst du ziemlich aufpassen, dass du dich nicht Strafbar machst, denn Newsletter bedürfen der Zustimmung des Empfängers

Es kann dir auch passieren, dass die mail() - Funktion abgedreht ist. SMTP wäre vielleicht eine Alternative.

Hallo,

hier mal meine Erfahrungen vielleicht helfen die auch weiter.

Ich verschicke Wöchendlich <10´000 Mails die Stark Personalisiert sind (Betreff/Inhalt/PDF-Anhang).
Meine Aktuelle Lösung:

  • mail() pro Datensatz mit sleep 0.5sec
  • nach 500 Mails kommte mit Javascript ein Neuladen und dann werden die nächsten 500 geschickt.
    Grund: 1 Mail brauch ca. 1sek und nach 30min Brechen alle mir bekannten Hoster ein PHP script ab und das umgehe ich halt so, dass nach 500 wieder neu gestartet wird.
    Das Dauert zwar über 2h aber eine Besser möglichkeit ist mir selber noch nicht eingefallen.

Fertige Newsletter sachen sind zu Fest, zum anfang hatte ich letterit, Kostenfrei, verwaltung ist auch OK aber irgendwann war bei der Personalisierung schluss, deswegen jetzt mit mail(), Javascript, und eine kleine Datenbank.

Cheffchen

mit mail() und einer Schleife sollte das doch gehen, mußt noch eine
sleep einbauen

Cheffchen:
PHP: set_time_limit - Manual

was willst du überhaupt damit erreichen? spam? dann würde ich die finger davon lassen!

Ein meta refresh würde es auch tun…