Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод сообщений во время генерации отчета
 
 автор: admiral   (03.05.2009 в 23:03)   письмо автору
 
 

Скрипт, который генерирует отчет выполняется около минуты. В отчете больше 300 тыс записей. Так что время генерации отчета оправдано.
Меня интересут такой вопрос, возможно ли на момент генерации отчета вывести сообщения типа: Пожалуйста подождите, идет генерация отчета

Тоесть например выполняется некоторый цикл while который обрабатывает кажду запись и на момент того пока он обрабатывает запись выводит жанное сообщение, а после ужесам отчет.
Теоретически какбыэто реализовать?

  Ответить  
 
 автор: Trianon   (03.05.2009 в 23:09)   письмо автору
 
   для: admiral   (03.05.2009 в 23:03)
 

А... собственно зачем?
Первая-то запись мгновенно выводится в поток?

Кстати, Вы эти 300000 записей прямо на экран одним куском и вытряхиваете?
это однако около 15 метров при 50 символах на запись....

  Ответить  
 
 автор: admiral   (04.05.2009 в 09:37)   письмо автору
 
   для: Trianon   (03.05.2009 в 23:09)
 

>А... собственно зачем?
>Первая-то запись мгновенно выводится в поток?

Не понял. Тоесть подразумеваете перед циклом и выводить данную запись?

>Кстати, Вы эти 300000 записей прямо на экран одним куском и вытряхиваете?
>это однако около 15 метров при 50 символах на запись....
Нет, в цикле вообще вывода не делаю, иначе браузер подвисать начинает.

  Ответить  
 
 автор: Trianon   (04.05.2009 в 10:46)   письмо автору
 
   для: admiral   (04.05.2009 в 09:37)
 

тогда мне, пожалуй, нечего посоветовать... при таком подходе...

  Ответить  
 
 автор: admiral   (04.05.2009 в 11:46)   письмо автору
 
   для: Trianon   (04.05.2009 в 10:46)
 

>тогда мне, пожалуй, нечего посоветовать... при таком подходе...

А какой подход правильный? Это для меня важно.

  Ответить  
 
 автор: Trianon   (04.05.2009 в 12:07)   письмо автору
 
   для: admiral   (04.05.2009 в 11:46)
 

Если вывод идет на экран - делать либо постраничную навигацию, либо возможность ограничить диапазон (с умалчиваемым ограничением разумного размера).
Если еcть требование получатm полный отчет - сделать возможность сохранения этого отчета в файл подходящего типа. .CSV к примеру. По возможности - упакованным в архив.

Типичный пример - phpMyAdmin.

  Ответить  
 
 автор: Loki   (04.05.2009 в 10:25)   письмо автору
 
   для: admiral   (03.05.2009 в 23:03)
 

>Теоретически какбыэто реализовать?
теоретически это позволяет функция ob_implicit_flush

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования