снова таймеры

DoctorD

Guest
снова таймеры

Есть вот такой вот простой пример

<?php

echo date('h:i:s') . "\n";

sleep(10);

echo date('h:i:s') . "\n";

?>

как сделать так чтобы 1 дату передавал браузеру потом слипился, а потом 2ю дату передавал.. Использую flush() перед слипом но не помогает, возможно это связано с

Several servers, especially on Win32, will still buffer the output from your script until it terminates before transmitting the results to the browser.

Server modules for Apache like mod_gzip may do buffering of their own that will cause flush() to not result in data being sent immediately to the client.

Even the browser may buffer its input before displaying it. Netscape, for example, buffers text until it receives an end-of-line or the beginning of a tag, and it won't render tables until the </table> tag of the outermost table is seen.
! Хотя тестю на IE

Some versions of Microsoft Internet Explorer will only start to display the page after they have received 256 bytes of output, so you may need to send extra whitespace before flushing to get those browsers to display the page.
! возможно тут косяк ?

помогите плз...
 

DoctorD

Guest
Demiurg
на самом деле нужно не это... а вот что, может подскажушь
Начинается поиск по базе, после клика на Search пользователю вываливается пол ХТМЛ страницы типа "Searching..."... потом идет серч и вываливаются рез-ты

-~{}~ 19.07.04 13:18:

Demiurg
хочу делать flushем или ob_flushем...но не работает ни то ни другое
 

DoctorD

Guest
voland
в смысле макромедией что ли? ... или ты о чем?
 

voland

Guest
FLASH
Это я подумал, что надо чтобы статус бар поиска был!
 

DoctorD

Guest
voland
ты верно подумал...а анимированый гиф не подойдет? =))

-~{}~ 19.07.04 13:33:

voland
лучше скажи как по частям браузеру пихать ХТМЛ...
 

Demiurg

Guest
а ты видел, как на этом форуме реализован поиск ?
 

DoctorD

Guest
Demiurg
видел...мне интересно как вызывается эта промежуточная страница и как потом резты вызываются...

-~{}~ 19.07.04 13:38:

Demiurg
если не трудно - объясни

или Фаната подожду... он то точно мне объяснит...в основном куда идти =)
 

voland

Guest
ты верно подумал...а анимированый гиф не подойдет? =))
Анимированный гиф будет показывать статус бар статически...
т.е. полоска будет крутиться для красоты, не отражая реальную загрузку страницы например.
Ты не вываливаешь пол страницы! Ты вываливаешь всю страницу сразу(это про генерацию хтмл средством пхп), а после делаешь паузу в выводе! Но пхп к этому отношения не имеет! А главное, что непонятно, зачем это надо? Тебе в той теме ответили популярно, как обычно все это делают и как будет правильно!
 

voland

Guest
видел...мне интересно как вызывается эта промежуточная страница и как потом резты вызываются...
Я например, сначала генерю SQL код на странице с надписью ПОИСК, после сохраняю его в сессии и выдаю страницу, где он вызываеться!
 

Demiurg

Guest
>мне интересно как вызывается эта промежуточная страница и как потом резты вызываются...
очень просто, выводим страницу, на которой будет meta refresh.
 

DoctorD

Guest
Demiurg
ок...

-~{}~ 19.07.04 14:01:

voland
я уже почти понял =)

-~{}~ 19.07.04 14:02:

Ладно ...сноси топик...разберусь...спасибо
 

lucas

Guest
Есть ощущение, что товарищ решает несуществующую проблему.

Не нужно заниматься украшательствами своего тормозного поиска.
Если пользователю нужно -- он переждет секунду-две.

Лучше бы тредстартер потратил вое время и энергию на оптимизацию поиска. Пользы будет больше.

P. S.: Кто-нибудь может обосновать мне полезность страниц-вставок после поиска, добавления темы/поста на этом форуме?
 

voland

Guest
P. S.: Кто-нибудь может обосновать мне полезность страниц-вставок после поиска, добавления темы/поста на этом форуме?
1. Обычно, это делают от рефрешей, но судя по твоему вопросу есть что-то и помимо этого!
2. Для пользователей, которые не помнят, что делают!
 

DoctorD

Guest
lucas
задача именно такая как я сказал, не я ее придумал, мне ее надо решить
 

voland

Guest
Я честно, говоря всегда думал, что ТЗ выдают немного по другому! Тебе его что так и дали?
Начинается поиск по базе, после клика на Search пользователю вываливается пол ХТМЛ страницы типа "Searching..."... потом идет серч и вываливаются рез-ты
Это же не ТЗ это бред...
Скорее всего тебе надо что-то другое, ты же нашел это решение и приципился к ниму. А так как ты судя по всему не понял, что тебе советуют, то решил выдать "па", типа ТЗ такое, и так надо сделать! Я не прав?
 

DoctorD

Guest
voland
какое еще тз?

мне сказали надо сделать "псевдо прогресс бар" для серча...вот и все =) т.е. не реальный прогресс бар с процентами а просто анимированый гиф пускай мигает пока серчинг...

неужели сложно рассказать как это организовать.
 

zahhar

двинутый новичок
DoctorD
Ты пойми простую истину, которую тебе тут уже 5 неглупых человек толкуют: твоя проблема надуманная и она не нуджается в решении.

Даже если тебе выдали ТЗ, в котором русским по белому говорится о необходимости "прогресс_бара" - это ещё не значит, что нужно всё бросить и побежать городить прогресс-бар. Тем более ты используешь средство разработки, в котором прогресс бар не предусмотрен (секешь, да?) В Дельфи, ВижуалБейсике, Флеше есть эл-ты управления типа "прогресс_бар", а в HTML (и тем паче в PHP) их нет - это ведь не случайно? Думается, и Дельфи с Бейсиком, и HTML/PHP придумывали умные люди и если бы им нужен был прогресс_бар - то таковой уже давно бы появился!

Хороший программист не тот программист, который слепо выполняет все, даже самые несуразные требования руководства. Хороший программист - тот, котоый может указать руководству на изъяны проекта и придумать оптимальное решение, свободное от этих изъянов!

Если ты получит ТЗ в такой несуразицей, твой гражданский долг - сесть на голову этому горе-проектировщику, предлагающему делать прогресс_бар в вебе и не слезать с неё, пока не убедишь в бесполезности этой затеи,а заодно и расскажешь ему, как нужно делать правильно. А правильно - заняться оптимизацией поиска, ведь ни один поиск, я так понимаю, при правильно спроектированной архитектуре БД и приложения не имеет право выполняться более 2-3 секунд вместе с отрисовкой результатов. (Если у тебя какая-то гигантская база данных на слабом железе и очень сложный поиск - тогда так и сообщи, что у меня в БД 50 миллионов записей и никакая математика не позволяет заставить запрос с 10 поисковыми параметрами выполняться быстрее 5 секунд - вот тгда и будем думать). А в остальных случаях тебе нужно задуматься над своим поиском и объяснять архитектору что он дурак!

Контраргументы прогресс-бара: необходимость обеспечения кроссбраузерной совместимости решения, увеличение трафика, ещё большее замедление поиска (ведь сервер таки должен подготовить и отдать пользователю страницу с прогресс-баром, а эти миллисекунды можно было бы использовать на благо поиска!) и т.д.

В общем - будь хорошим программистом!
 
Сверху