Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Korespondencja seryjna
Forum PHP.pl > Forum > PHP
slawo
Witam, zastanawiam się jak wielkie serwisy co mają miliony kont użytkowników rozsyłają mejle. Napisałem taki prosty skrypt. Jednak jest on wstanie rozesłać mejle do 50-100 użytkowników później się zacina. Mam bazę ponad 3tyś. kont. Jak mogę rozwiązać problem?

  1. <?php
  2.  
  3. require('haslo_bazy.php');
  4.  
  5. $naglowki .= "From: NADAWCA <adres@nadawcy.pl>".PHP_EOL;
  6. $naglowki .= "MIME-Version: 1.0".PHP_EOL;
  7. $naglowki .= "Content-type: text/html; charset=iso-8859-2".PHP_EOL;
  8.  
  9. $pokaz_email_do_wyslania = mysql_query("SELECT * FROM uzytkownicy");
  10. while($pe = mysql_fetch_assoc($pokaz_email_do_wyslania)) {
  11.  
  12. $wiadomosc = "Wiadomość do wszystkich";
  13.  
  14. if(mail("".$pe['poczta']."", 'temat wiadomośći', $wiadomosc, $naglowki)){}
  15.  
  16. }
  17.  
  18. if($wyslij_poczte) echo "Poczta została wysłana.";
  19.  
  20. ?>
emstawicki
Cron + limit & offset.
Podziel użytkowników na partie po 50-100 użytkowników i wysyłaj partiami. Informację o przebiegu trzymaj w tymczasowej tabeli, pliku bądź innym mechanizmie.
adbacz
Najlepszym wyjściem jest zaciagnięcie do pracy serwisu, który zajmuje się tylko i wyłącznie korespondencją masową. Znam tylko jeden darmowy serwis MailChimp, który umożliwia wysłanie 12000 wiadomości miesięcznie. Ma API, możesz mu zapodać wszystkie 3 tys wiadomości za jednym razem, on je wrzuci do siebie na stack i będzie wysyłał dopóki nie wyśle wszystkich.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.