Сохранение вывода в броузер, без его буфферизации.

Бочонок

http://frontender.info
Сохранение вывода в броузер, без его буфферизации.

Доброго времени суток.
Возник вопрос:
Можно ли получить весь ответ браузеру (без заголовков, только тело сообщения) без его буфферизации и сохранения каждого "вывода" вручную ?
Тоесть в отличии от случая с буфферизацией вывод в броузер происходит помере его появления, но выводимая информациясохраняется в некой переменной.

есть какие то идеи ?

кроме:

PHP:
$out = '';
$out_tmp = 'out 1';
$out.=$out_tmp;
echo $out_tmp;
$out_tmp = 'out 2';
$out.=$out_tmp;
echo $out_tmp;
...
тоесть что бы можно было включить механизм сохранения в скрипт с минимальными изменениями этого скрипта. ?
 

Бочонок

http://frontender.info
Хочу довести до ума скриптик о котором писал. (vindicator)
В данном случае -
я должен получить все что выводится в браузер, кроме заголовков.
Затем кодирую в utf-8 и шлю validator.w3.org.
Такой банер позволяет проверять странички которые находятся на локальной машине и имеют множество состояний.
Если использовать буфферизацию - все хорошо.
только пока не сформируется вывод пользователь смотрит на белый экран, что недопустимо =(
вот и задаюсь вопросом - а можно ли с этим справится ?
 

ksnk

прохожий
Хм... Как идея реализации: В начале делается ob_start, а затем - функция myFlush() , которая периодически сохраняет буффер и вбрасывает его в броузер функцией ob_flush...
Только называть это хозяйство баннером я бы постеснялся :) vindicator, imho, писал о JavaScript'е.
 

Кром

Новичок
Бочонок
>только пока не сформируется вывод пользователь смотрит на белый экран, что недопустимо

Что это еще за вывод и почему он должен долго формироваться?
 

Бочонок

http://frontender.info
2Кром:
---
Что это еще за вывод и почему он должен долго формироваться?
---

гм...
1. html документ самый обычный.
2. + Если банер текстовый и мы не используем для формирования баннера JS (тоесть получили вывод, вывели в браузер а потом сформировали баннер и вписали его куда надо с помощью js), то к этому прибавляется время общения с валидатором. Обычно ~3-15 секунд в зависимости от соединения и размера html странички.


2ksnk:
myFlush() - а можно поподробнее ?
как без впихивания этой функции вручную после каждого вывода это возможно ?
то есть чем идея отличается от "кроме:", которое я описал в шапке ?

-~{}~ 21.09.06 18:02:

---
Только называть это хозяйство баннером я бы постеснялся vindicator, imho, писал о JavaScript'е.
---
-1. w3c vindicator - название скрипта.
0. ээээ. не понял о чем ты ?
1. да, я пытался получить вывод с помощью JS, но быстро стало ясно что с помощью JS его получить протсто невозможно...
2. а почему это нельзя назвать баннером ?
 

ksnk

прохожий
PHP:
function myFlush(){
  global $content;
  $content.=ob_get_content() ;
  ob_flush();
}
чем идея отличается от "кроме:",
Ну, несколько меньше менять код придется. В "длинных" местах вставить вызов функции и все...
а почему это нельзя назвать баннером
Баннер - это, imho, "графическая" ссылка, поставляемая 3-ей стороной...
 

Бочонок

http://frontender.info
---
Баннер - это, imho, "графическая" ссылка,
---
гм... вы пожалуй правы. вообще то изначально скрипт выдавал именно картинку с текстом о состоянии. отсюда и появилось...

---
поставляемая 3-ей стороной...
---
спорить не буду...

а как же его тогда называть то ? :)

за идею спасибо большое при большое.
а есть ли еще какие то способы ?
или это - единственный выход ?
 
Сверху