Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Файл рассылки помогите настроить.
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Файл рассылки помогите настроить.

Страниц (1): [1]
 

1. mss-s - 09 Мая, 2009 - 14:20:42 - перейти к сообщению
помогите настроить файл рассылки писем мне нужна чтоб он посылал письма интервалом в 5 -10 секунд так как несколько писем за рас хост не позволяет посылать
вот код отправки пьсем, мне не для спама нужно просто надоело посылать каждому по отдельности.
нужно чтоб посылал по 2 3 письма за рас потом ждал 5-10 секунд и посылал опять.

вот оригинал.

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $to  = file('emails.txt');
  3. $subject = 'Birthday Reminders for August';
  4. $message = file('text.txt');
  5. $headers  = 'MIME-Version: 1.0' . "\r\n";
  6. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  7. $headers .= 'From: Birthday Reminder <mss-s@yandex.ru>' . "\r\n";
  8. mail(trim($to), $subject, $message, $headers);
  9. ?>


Мой вариант,действует по принципу кратно\некратно. Я засунул в цикл отправку. Но он не работает правильно проста спит 10 секунд и посылает все письма разом.

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $to = file('emails.txt');
  3. $sleep = 10; // Колво пользоваталей перед слипом.
  4. $subject = 'Birthday Reminders for August';
  5. $message = file('text.txt');
  6. $headers = 'MIME-Version: 1.0' . "\r\n";
  7. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  8. $headers .= 'From: Birthday Reminder <mss-s@yandex.ru>' . "\r\n";
  9. for ($i = 0; $i < count($to); $i++) {
  10.     if ($i % $sleep == 0) { // проверяем колво отправленых писем,на кратность с ограничителем,если кратно делаем слип,если нет = отправляем.
  11.         sleep(10); // В секундах слип
  12.     } else {
  13.         mail(trim($to[$i]), $subject, $message, $headers);
  14.     }
  15. }
  16. ?>
2. valenok - 09 Мая, 2009 - 15:32:26 - перейти к сообщению
А как ты узнаешь что сразу ?
Кроме того твой код каждому десятому письмо не отправит.
--
Сначала я подумал вдруг smtp сервер вот так настроен что ждет сначала всех команд от скрипта и его завершения, а потом начинает свою работу. Посмотрел, и кроме тебя никто на проблемы со липом и мейлом не жаловался.

Попробуй

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. for ($i = 0; $i < count($to); $i+=10)
  3. {
  4.   mail(implode(',',array_slice($to, $i*10, 10)),$subject,$message,$headers);
  5.   sleep(10);
  6. }
  7.  
3. mss-s - 09 Мая, 2009 - 16:41:40 - перейти к сообщению
поставил работает но после 30 секунд выскакивает 502 Bad Gateway пробывал поставить следуишии код

PHP:
скопировать код в буфер обмена
  1. @ini_set('max_execution_time',0);
  2. @ini_set('output_buffering',0);
  3. //.... ниже сам код

но проблема осталось
4. valenok - 09 Мая, 2009 - 17:08:49 - перейти к сообщению
А ты хоть знаешь что ты пробовал поставить ? Тогда объясни пожалуйста зачем.
А еще надо теперь в логе ошибок apahe искать что её вызвало, еще попробовать обратиться к хостинг провайдеру.
5. mss-s - 09 Мая, 2009 - 17:27:37 - перейти к сообщению
мне подсказал знакомый он сказал что проблема может быть решится но что с кодом что бес него один и тот же результат 502 Bad Gateway
6. valenok - 10 Мая, 2009 - 08:25:07 - перейти к сообщению
Слушай этого знакомого в плане php поменьше. Я боюсь он сам не знает что делает.
А теперь повторю еще раз.

Цитата:
А еще надо теперь в логе ошибок apahe искать что её вызвало и попробовать обратиться к хостинг провайдеру.

А на вашем месте я как минимум поинтересовался бы что это за ошибка
7. mss-s - 10 Мая, 2009 - 12:20:17 - перейти к сообщению
Наверно в этом дело на сайте нашол вот:
"по умолчанию один аккаунт может отправить 480 почтовых сообщений в день - не более 5 писем за 15 минут"

 

Powered by ExBB FM 1.0 RC1