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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Использование цикла

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
МаксимАндреевич
Отправлено: 25 Июня, 2016 - 22:27:28
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2016  


Помог: 0 раз(а)




Здравствуйте, уважаемые.
Сам я являюсь чайником, поэтому прошу помощи у Вас.
Задача такова: нужно отправить сообщения всем пользователям.
В принципе скрипт работает, но выполняется он слишком долго и успевает отправить около 50-70 сообщений, дальше вылетает ошибка.

Так же нужно выводить на экран информацию не после выполнения всего цикла, а после каждой интеграции. Знаю, что с помощью одного php этого не сделать и нужно использовать аякс, но руки не из того места)

Вот примерный код:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $ids = getids(); // id пользователей > 5000 значений
  4. foreach ($ids as &$value) {
  5.     send($value,'сообщение'); //функция отправки сообщения
  6. echo 'сообщение пользователю '.$value.' отправлено';
  7.    sleep(3);
  8. ob_flush (); flush ();
  9. }
  10. ?>
  11.  
 
 Top
Prizma
Отправлено: 26 Июня, 2016 - 13:43:26
Post Id



Посетитель


Покинул форум
Сообщений всего: 463
Дата рег-ции: Июнь 2012  
Откуда: Санкт-Петербург


Помог: 5 раз(а)




В начале скрипта и скрипт будет выполняться неограниченное время
 
My status
 Top
МаксимАндреевич
Отправлено: 26 Июня, 2016 - 18:47:52
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2016  


Помог: 0 раз(а)




Спасибо. Попробую.
Однако памяти может не хватить.
 
 Top
Ismail
Отправлено: 26 Июня, 2016 - 19:38:39
Post Id



Новичок


Покинул форум
Сообщений всего: 46
Дата рег-ции: Сент. 2012  


Помог: 0 раз(а)




Почитайте про отложенную загрузку в гугле, вот например http:// www[dot]itlessons[dot]info/php/sending-e[dot][dot][dot]-or-swiftmailer/
 
 Top
chugusov
Отправлено: 27 Июня, 2016 - 20:15:54
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2016  


Помог: 0 раз(а)




А зачем sleep(3); поставил?
Проблема твоя скорее всего в том, что любой веб-сервер ограничивает по времени выполнения скрипта. Сколько пользователей всего? Может без слипа успеет. Нет, разбей на части.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB