Рассылака на php

L
На сайте с 13.10.2010
Offline
27
415

Имеется таблица пользователей и таблица писем. Нужно сделать рассылку пользователям раз в четыре дня по письму. Это более-менее понятно и реализуемо. Выбираем массив пользователей прогоняем через mail(). Но вот встала нетривиальная задача следующего толка: если в таблицу добавляется новый мейл, то он должен получать письма с начала списка. Допустим отсылали месяц, ушло 4 письма. Добавился новый, ему должно идти с №1. Получается (например) в одно время чел с id 5 получает письмо №12, чел с id 36 №4 с id 37 №3. Как это можно реализовать? Три дня думаю уже. Помогите кто чем может :confused:

Каширин
На сайте с 03.01.2004
Offline
1030
#1

Подумаешь, бином Ньютона :)

Таблица в БД - очередь рассылки:

TABLE queue

id | letter_id | user_id

Рассылааешь письма по порядку, но больше максимального letter_id из таблицы queue, для user_id = queue.user_id

После отправки каждого письма вносишь соответствующую запись в таблицу очереди. Ее же можно использовать для рассылки - сначала формировать очередь, а потом после отправки менять статус записи на ОК.

L
На сайте с 13.10.2010
Offline
27
#2

Спасибо, реализовал похожим способом!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий