sheynhjk

Возможно ли сделать такой скрипт на PHP

3 posts in this topic

Доброго дня!!!

Вопрос к тем кто "шарит" в php, помогите пожалуйста понять и разобраться, даже не могу представить, как правильно составить ТЗ

 

Значит у меня есть доска объявлений. Ранее заказывал написание php скрипта, который по средствам cron осуществлял рассылку (напоминалку) всем кто разместил объявления 10,20,30 дней назад (т.е. с кратностью 10 дней) и со временем, с развитием сайта, когда объявлений становилось все больше и больше. скрипт стал обваливать сервер. в итоге я его отключил (писал о проблеме ранее https://talk.pr-cy.ru/topic/18001-podskazhite-pozhalujsta-po-php/?hl=sheynhjk#entry212275но решения так и не нашел)

 

Возможно ли каким-то способом реализовать следующее:

 - Скрипт отправляет письма всем кто разместил объявлений 30, 60. 90 и т.д. дней назад;

 - Отправляет письмо через каждые 30 секунд (120 писем в час) Допустим пусть используется тот же cron, запускается через каждые 30 секунд, но отправляет только одно письмо и с учетом, что по этому объявлению в течении этих суток (конкретного числа) письмо еще не отправлялась. После )) часов, начинал работать с новым числом, даже если по старому числу отправлены сообщения не всем возможным адресатам (у каждого объявления есть свой уникальный ID)

 

Извините если не понятно выражаюсь, старался максимально понятно объяснить, спасибо!

Share this post


Link to post
Share on other sites

Ну а почему не возможно. По крону запускаете файл каждые 30 сек. Изменяете mysql запрос, добавляете в него лимит =1 и смещение(offset). Значение смещения храните где-то в файле и при каждом запуске увеличиваете его на 1. В начале нового дня значение смещения обнуляется.

sheynhjk likes this

Share this post


Link to post
Share on other sites

Ну а почему не возможно. По крону запускаете файл каждые 30 сек. Изменяете mysql запрос, добавляете в него лимит =1 и смещение(offset). Значение смещения храните где-то в файле и при каждом запуске увеличиваете его на 1. В начале нового дня значение смещения обнуляется.

 Возможно здесь есть одно но... Пользователи получившие сообщение утром, зашли, подняли свое объявление и у него поменялась дата, соответственно количество объявлений на число рассылки (т.е. сегодня 27.10 а письма рассылаются по объявлениям за 28.09) уменьшается и часть адресатов не получают письма.

Я правильно понимаю?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.