Вывод страницы браузеру до полной её загрузки...

  • Автор темы Автор темы Fuz
  • Дата начала Дата начала

Fuz

Новичок
Вывод страницы браузеру до полной её загрузки...

На странице выполняется очень долгий парсинг большой БД, в это время должно выводится сообщение типа "loading..."
К примеру :
PHP:
Print 'loading...';
$result->export($something);
Но до тех пор пока эксопрт не выполнится на экране будет пусто. я знаю,
что это делается с помощью ob_start() и ob_end_flush(), но мануал чего-то не очень помог.
 
поиск поможет...а вообще "парсинг большой БД" нужно запускать в фоне...
 
Я как раз недавно такое делал =) Запуск индексации сайта, может исполнятся часами. По onclick кнопки запуск делаем caller = new Image(); caller.src= 'урл до скрипта'; setTimeout('document.location.reload()',500); Картинка обращается к скрипту в котором
PHP:
set_time_limit(0);
ignore_user_abort(TRUE);
Пишет в БД то что мы успешно запустились. После релоада смотрим в базе, если запущено, то выводим "Loading..." и реалодим каждые 10 сек. А в конце обрабатывающего скрипта пишем в БД, то что процесс закончен (через registrer_shutdown_function() лучше всего). Можно переодически записывать сколько процентов закончено :)
 
Фанат
я не знаю. цитирую "мануал не помог", поэтому и написал сюда. В чём проблема?
WP
это интересно, но хочу всё-таки разобраться с ob_start() и ob_end_flush()...
 
ну так прочитай в мануале, что делает ob_start и сравни с тем, что тебе нужно.
 
Не, по-моему, это тот случай, когда нужно «носом ткнуть»:
в мануале ни в статье об ob_start(), ни в статье об ob_end_flush() нет ссылок на просто flush()...

(Насколько я понял, речь не идёт об «индикаторе выполнения» — автору нужно тупо вывести одну строчку до вывода тех, что ещё будут генерироваться.)
 
Сверху