Cytat
Czy aby się opłaca to dla serwera, gdyż wysyła załóżmy 100 rekordów pobranych z jakieś tabeli w bazie, następnie pobiera dane innej, a okazuje się, że jest błąd w zapytaniu i, że tak to ujmę, na marnę poszły te Bajty wysłane przez serwer, a gość tylko nie potrzebnie pobrał ich parę.
Z jednej strony masz rację. Ale rozważ taką sytuację. To pobieranie rekordów trwa powiedzmy minutę. Człowiek ma taką naturę że jak coś odpala i przez 5 sekund nic się nie dzieje, to szlag go trafia a nie wspomnę o minucie. Większośc nie doczeka tej minuty i pomyśli że jest coś zwalone i zakończy proces. A gdy będzie wyświetlana informacja o postępie, to gostek widzi że coś sie dzieje, że jest ok i wie w przybliżeniu ile jeszcze musi poczekać. Nawet jeśli przy 99% pojawi się błąd to i tak opłaca się pobrać tych pare bajtów dla spokojności użytkownika.
Co do sleep(). Zostało ono zastosowane, aby te dane wyświetlaly się powoli i żeby można było zobaczyć efekt dzialania flush. Gdyby nie było sleep dane by wyskoczyly tak szybko, jakby zostały wyswietlone wszystkie naraz.
pozdro