Stworzenie CRON'a do wysyłki wiadomości email

0

Witam,

Jako, że aktualnie jestem jedynym programistą w firmie (drugi jest na urlopie) spadło na mnie zadanie stworzenia CRON'a do wysyłki wiadomości e-mail newsletterem w sklepie internetowym. Cały mechanizm wysyłki wiadomości do wybranych odbiorców działa. Tylko teraz szef zażyczył sobie, aby stworzyć CRON'a, który co kilka minut będzie wysyłał wiadomość do np 200 odbiorców, za kilka minut do kolejnych 200 itd, aż wyśle do wszystkich. Problem polega na tym, że CRON'a nigdy nie tworzyłem ani nie używałem i nie bardzo mam pojęcie jak się zabrać za to. Może uda Wam się pomóc mi w jakiś sposób? Nakierować od czego zacząć, co będzie mi potrzebne aby to wykonać i czy jest to ciężka robota?

Pozdrawiam

0

Najlepiej zacząć od przeczytania jak działa cron:

https://help.ubuntu.com/community/CronHowto

Ogólnie nie jest to nic trudnego. Skoro masz już skrypt do wysyłki wiadomości pozostaje Ci dodanie wpisu do tablicy cron "crontab -e", który będzie go uruchamiał co jakiś czas.

A ogólnie to opowiedz szefowi o:

http://www.mailgun.com/

0

Dziękuję za odpowiedź.

Mam takie wytyczne:

  • Dodanie tabeli z kolejką maili newslettera do wysłania.
  • Wywołanie rozsyłania w pliku cron.php.

Rozumiem, że w bazie muszę stworzyć tabelę, w której zapiszę wszystkie emaile do których ma pójść wiadomość? Będzie to struktura na zasadzie: Id -- E-mail -- Wyslano(0/1). Przed wywołaniem crona, gdy już będę miał wszystkie e-maile do wysyłania pod jakąś zmienną to musiałbym zrobić INSERTY tych wszystkich maili do tej tabeli, aby później móc wyciągać za pomocą CRON'a np pierwsze 100 itd? (LIMIT 100 WHERE Wyslano=0). Dobrze to rozumuję czy nie jest to zbyt dobre?

0

Brzmi ok, rób, a błędami się zajmiesz później.

0

Ok ale w jaki sposób teraz te linijki, w której aktualnie mam pętlę przebiegającą przez każdy z e-maili i wywołującą funkcję mail() dla każdego (wysyłane wszystko naraz do wszystkich i właśnie to chcę zmienić) zamienić i wywołać funkcję rozsyłającą te maile okresowo z pliku cron.php?

0

no wstawiasz limit 100, wysyłasz co masz wysłać, oznaczasz je jako wysłane i kończysz skrypt. a sam skrypt php ustawiasz na uruchamianie co 5 minut, nie wiem jak teraz go uruchamiacie

0

Znaczy na chwilę obecną to ten skrypt to jest po prostu funkcja w tym samym pliku, która uruchamia się po kliknięciu przycisku Submit na formularzu

0

no to wydziel to do osobnego pliku, żeby się to dało uruchomić uruchamiając skrypt z linii poleceń (ew. wywołując adres w przeglądarce)

0

Dziękuję Wam wszystko działa jak należy :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1