Можно сделать выборку SELECT, чтобы данные выводились вперемешку.

Эдди

Новичок
Каждый раз по-разному.

Суть вопроса проста.
Делаю рассылку с выборкой из БД (не спам, по подписке).

Поскольку хостер допускает только 200 писем в минуту, то ставлю задержку 5 секунд между письмами.

Иногда рассылка до конца не доходит. Ну, свет выключили или другое что.

Хочется, чтобы не только первые в списке всегда получали рассылку...
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Так можно было бы их в Cс: или в Bcc: засунуть, и это было бы очень быстро.
 

shureen

Милорд Лось Кристофер
Эдди
это заголовки письма - копия и скрытая копия.

А вообще как вариант использовать очереди, и по крону запускать
 

Эдди

Новичок
Эдди
это заголовки письма - копия и скрытая копия.

А вообще как вариант использовать очереди, и по крону запускать
А. Ну так это я знаю. Просто не подумал про заголовки.

Может, я очень тупой. Но каким образом заголовки повлияют на мою проблему?

И может, я неправильно проблему описал?
Мне надо, чтобы очередь сообщений по адресам, полученным из БД, каждый раз была разной.

--

Получаю из базы выборку адресов и ФИО
В цикле отправляю почту.
Вроде все просто.

У меня только один вариант вырисовывается. Не сразу в цикле отправлять почту. А забивать в массив, там перемешивать, и только потом снова в цикле отправлять.
Правильно будет?

Просто думал, что может, оператор SELECT имеет какую примочку...
 

shureen

Милорд Лось Кристофер
Может, я очень тупой. Но каким образом заголовки повлияют на мою проблему?
флоппик не зря спросил одинаковое ли по содержанию письмо. Было бы одинаковое, можно было бы всех адресатов в копию пихнуть и отправить один раз

Про очередь:
Когда хочешь разослать письма, добавляешь в очередь адресатов. Потом по крону берешь по 200 (раз тебе по 200 надо) штук, которым ещё не отправлял, отсылаешь каждому и помечаешь как отправленный (ну или удаляешь).
 

Эдди

Новичок
флоппик не зря спросил одинаковое ли по содержанию письмо. Было бы одинаковое, можно было бы всех адресатов в копию пихнуть и отправить один раз

Про очередь:
Когда хочешь разослать письма, добавляешь в очередь адресатов. Потом по крону берешь по 200 (раз тебе по 200 надо) штук, которым ещё не отправлял, отсылаешь каждому и помечаешь как отправленный (ну или удаляешь).
Понял.
По крону лучше ночью.

А мне как раз в прайм-тайм надо. И не мне, а менеджеру, который кнопочку должен нажать и все.

Мой вариант не нравится? С массивом.
 

shureen

Милорд Лось Кристофер
Зачем ночью? Раз в N минут пусть запускается скрипт который проверяет есть ли чё отправлять, и если есть отправляет

Твой вариант какой то не вариант совсем. Он как минимум не гарантирует что всем отправишь. И ты хочешь оправить сразу всем, а очередь подразумевает постепенную отправку
 

Эдди

Новичок
Зачем ночью? Раз в N минут пусть запускается скрипт который проверяет есть ли чё отправлять, и если есть отправляет

Твой вариант какой то не вариант совсем. Он как минимум не гарантирует что всем отправишь. И ты хочешь оправить сразу всем, а очередь подразумевает постепенную отправку
Если крон гарантирует, что всем отправлю, то конечно, отпадает необходимость в перемешивании. Ты прав.

Только вот я не в курсе, как можно кнопочкой из формы через крон отправлять.
Обычно туда лезу через оболочку. А менеджер это делать не будет.

Мне здесь даже не гарантия, что всем отправлю, нужна.
А гарантия, что периодичски все будут олучать. Хоть от случая к случаю.
 

shureen

Милорд Лось Кристофер
Ты не совсем понимаешь похоже. Скрипт по крону должен выполняться всегда. Он проверяет есть ли что отправлять, и как бы если нечего отправлять, то не делает свои громоздкие дела и завершается.
Никакой кнопочкой его запускать не надо. Сама очередь должна создаваться вместо отправки. Т.е. вот сейчас ты отправляешь многим юзерам письма, так вот вместо оправки ты эти письма ставишь в очередь. А саму отправку уже скрипт кроновский производит
 

Эдди

Новичок
Ты не совсем понимаешь похоже. Скрипт по крону должен выполняться всегда. Он проверяет есть ли что отправлять, и как бы если нечего отправлять, то не делает свои громоздкие дела и завершается.
Никакой кнопочкой его запускать не надо. Сама очередь должна создаваться вместо отправки. Т.е. вот сейчас ты отправляешь многим юзерам письма, так вот вместо оправки ты эти письма ставишь в очередь. А саму отправку уже скрипт кроновский производит
Тогда просто переделывать скрипт. Не простая форма отправки почты. А сохранение в базе или в файле, проверка и пр. Так ведь?
КРон работает регулярно с проверкой.

Это понятно.

Мне не совсем это нравится, но подумаю. Может, и вариант.
 

shureen

Милорд Лось Кристофер
Тогда просто переделывать скрипт. Не простая форма отправки почты. А сохранение в базе или в файле, проверка и пр. Так ведь?
Да, менеджер щёлкает кнопку, вместо отправки каждому юзеру, добавляешь его в очередь. А дальше уже скрипт всё отправит
Мне не совсем это нравится, но подумаю. Может, и вариант
Чем не нравиться? ИМХО самый правильный вариант рассылки почты
 

Эдди

Новичок
Ясно! Спасибо.

ВОпрос вдогонку. Про кроссбраузерность (это не понадобится с кроном, но все же хотелось бы знать).

Вот сейчас отправляю через браузер писем 500-600 с задержкой 5 секунд.
После каждого письма отчет - ОК или Эррор.

Мозилла выдает каждую строку (письмо) по-порядку, как только она отработана.
IE сразу зависает. Хотя рассылка идет. НА странице белым бело.
Глюк IE? (пробовал на версии 8).

Вообще IE очень теряет позиции, как я смотрю по статистике посещения сайта.
 
Сверху