Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> boks z ilością maili na godzinę
amadeopl
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 22.12.2011

Ostrzeżenie: (0%)
-----


Witam, jestem początkujący w dziedzinie php ale łapę szybko.

Robię skrypt do wysyłania maili na phpmailer i mam taki problem.

Nie wiem jak zrobić pole w którym to by się wpisywało maksymalna ilość maili na godzinę, po prostu ogranicznik.

Proszę o wskazówki.

Zaznaczam że nie chodzi mi tu o sam box tylko o funkcje co ogranicza ilość maili na godzinę, jakiś dławik.

Z góry przepraszam za swoją niewiedzę i czekam na pomoc.

Pozdrawiam!


ps. wesołych świąt :)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Dzięki - wesołych i radosnych (IMG:style_emoticons/default/wink.gif)

Co do pytania - nie wiem jak dokładnie ma działać twój system ale możesz to zrobić na kilka sposobów.

Jeżeli zakładasz, że ma być wysyłane X maili na godzinę równomiernie to przydało by się uzyć funkcji sleep lub usleep i po prostu wrzucić jedną z nich pomiędzy wysyłanie maili określając w dość prosty sposób:

  1. $maili_na_godzine = 400; // przykładowa liczba
  2. $godzina = 60*60; //sekund
  3. $odstep_czasu = floor($godzina/$maili_na_godzine);
  4.  
  5. for(... [wszystkie maile] ...)
  6. {
  7. wyslij_maila($parametry[$i]);
  8. sleep($odstep_czasu);
  9. }


To tylko przykład - wystarczający na początek (IMG:style_emoticons/default/smile.gif)

Można też do tego użyć cron'a ale wtedy można nie uzyskać równomiernej liczby wysyłanych maili na godzinę.

Dodatkowo trzeba założyć jakiś czas na samo wysłanie maila - kwestia przetestowania jak szybko dany serwer wysyła maile (wziąc na to poprawkę przy liczeniu odstepu wysyłania maili)

Dla wysyłania maili częściej niż raz na sekundę należy użyć funkcji usleep lub odpowiedniej - w sleep ułamki sekund nie działają (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 21:12