Ограничение при рассылке почты
-
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 18 лет 6 месяцев
Ограничение при рассылке почты
Здравствуйте!
Не смог отправить рассылку группе пользователей форума. Выяснил у хостера: у него есть ограничение - не более 50 писем за раз. Очень не хочется дробить на группы по 50 человек, чтобы разослать сообщение. Может быть, кто-нибудь решал эту проблему?
P.S. Пробовал в Конфигурации задать SMTP сервер, тот же rambler, но при отправке возникает ошибка "Could not connect to smtp host : 13 : Permission denied".
Добавлено спустя 4 часа 38 минут 46 секунд:
Нашел выход из положения. Если кому интересно, могу поделиться опытом.
Не смог отправить рассылку группе пользователей форума. Выяснил у хостера: у него есть ограничение - не более 50 писем за раз. Очень не хочется дробить на группы по 50 человек, чтобы разослать сообщение. Может быть, кто-нибудь решал эту проблему?
P.S. Пробовал в Конфигурации задать SMTP сервер, тот же rambler, но при отправке возникает ошибка "Could not connect to smtp host : 13 : Permission denied".
Добавлено спустя 4 часа 38 минут 46 секунд:
Нашел выход из положения. Если кому интересно, могу поделиться опытом.
-
- Former team member
- Сообщения: 1139
- Стаж: 19 лет 2 месяца
- Откуда: Ленинград
-
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 18 лет 6 месяцев
Возникла мысль: если хостер ограничивает количество писем, значит посылать нужно ему не весь список адресов, а порциями. Я немного знаком с SQL и знаю оператор "LIMIT", ограничивающий результирующую таблицу. LIMIT 0, 50 - первые 50 записей, LIMIT 50, 50 - вторые 50, и т.д. Зато я совершенно не знаю PHP. Стал искать строки, где формируется таблица адресов для массовой рассылки. Нашел таки. Это скрипт admin_mass_email.php, судя по названию, отвечающий за рассылку. В нем есть строка:
Добавил в нее LIMIT 0,50 после ud.user_id:
Закачал отредактированный скрипт на сайт, отправил рассылку первым 50 пользователям. Снова отредактировал скрипт, изменив на LIMIT 50, 50, снова закачал и отправил уже вторым 50 пользователям... и т.д.
Конечно, это только выход из положения, который меня вполне устроил. Зная PHP, наверно, можно организовать цикл, который бы выполнялся n-е число раз в зависимости от количества адресов. Но, увы, чего не знаю, того не знаю...
Код: Выделить всё
$sql = ( $group_id != -1 ) ? "SELECT u.user_email FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . " AND u.user_id = ug.user_id" : "SELECT user_email FROM " . USERS_TABLE;
Код: Выделить всё
$sql = ( $group_id != -1 ) ? "SELECT u.user_email FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . " AND u.user_id = ug.user_id LIMIT 0, 50" : "SELECT user_email FROM " . USERS_TABLE;
Конечно, это только выход из положения, который меня вполне устроил. Зная PHP, наверно, можно организовать цикл, который бы выполнялся n-е число раз в зависимости от количества адресов. Но, увы, чего не знаю, того не знаю...
-
- Former team member
- Сообщения: 955
- Стаж: 20 лет 3 месяца
- Откуда: Москва
-
- Former team member
- Сообщения: 6517
- Стаж: 20 лет 9 месяцев
- Откуда: Бердск
calipso это не решение, это гемморой. следующая рассылка снова меняем скрипт, и так раз 10-20. Может проще разбить на группы и не париться.
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
-
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 18 лет 6 месяцев
Да нет, проще отредактировать. Хотя бы потому, чтобы создать эти 10-20 групп, нужно сначала составить списки пользователей каждой из этих групп.
Жалко не знаю php, а то бы добавил в диалог массовой рассылки числовое поле, значение которого меняло первую цифру в строке LIMIT 0, 50, на кратную 50 (50, 100, 150..). Думаю, что для знатоков php это задача на один зуб.
Жалко не знаю php, а то бы добавил в диалог массовой рассылки числовое поле, значение которого меняло первую цифру в строке LIMIT 0, 50, на кратную 50 (50, 100, 150..). Думаю, что для знатоков php это задача на один зуб.
-
- phpBB 1.2.1
- Сообщения: 22
- Стаж: 18 лет 4 месяца
- Откуда: Москва
Думаю, именно то, что нужно Вам
http://www.phpbbguru.net/community/view ... hp?t=12283
http://www.phpbbguru.net/community/view ... hp?t=12283
Coagulant двумя постами выше Вам его же советовал... тока версия постарше.HIV писал(а):МОД, который рассылает рассылку пачками (там по 100, по 200, и.т.д и делает после каждого числа паузу в 10 секунд или 20, всё это выставляется в панели администратора),
-
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 18 лет 6 месяцев
Спасибо за ссылку и вам и Coagulantу. Скачал, как будет время - обязательно посмотрю. Похоже, это, действительно, то, что нужно.
Проблемку я свою решил вышеуказанным способом. Мне не трудно и ручками (зато процесс под контролем). Рассылкой никогда не пользовался, вот приспичило. Теперь, может быть, через месяц-другой снова потребуется.
Всем спасибо за участие!
Проблемку я свою решил вышеуказанным способом. Мне не трудно и ручками (зато процесс под контролем). Рассылкой никогда не пользовался, вот приспичило. Теперь, может быть, через месяц-другой снова потребуется.
Всем спасибо за участие!
-
- Former team member
- Сообщения: 1139
- Стаж: 19 лет 2 месяца
- Откуда: Ленинград
-
- phpBB 1.4.4
- Сообщения: 130
- Стаж: 18 лет 2 месяца
- Откуда: Беларусь, Гомель