Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funkcja flush(); nie działa!
Forum PHP.pl > Forum > PHP
plastus321
Witam wszystkich!

Przejdę od razu do sprawy podanej w temacie...
Staram się zrobić progress bar za pomocą funkcji flush();

Tu macie link do skryptu z którego korzystam:
SKRYPT

Umieszczenie tego skryptu nic nie zrobiło na stronie u mnie...
Po porstu jest końcowy efekt o informacji "Process completed".
W komentarzach również doczytałem, że należy dodać na początku kodu php funckje ob_end_flush();
Niestety, to również nic nie dało...

I moje pytanie brzmi... Co może to powodować, że nie działa?

Przeglądarka? - Próbowałem w FF i Chrome i to samo...

Serwery na których odpalam? - próbowałem na cba.pl i na ugu.pl i to samo...


Za pomoc i odpowiedzi z góry wielkie dzięki! wink.gif
timon27
Widzę że nie rozumiesz działania php smile.gif
Więc: kod php zawsze wykonuje się po stronie serwera.
Gdy się całkowicie wykona to gotowe źródło strony jest wysyłane do klienta.
Jeśli chcesz ruchome elementy na stronie musisz zastosować javascript - jest to język wykonywany po stronie klienta w jego przeglądarce.

Twój kod wygenerował 11 komend jevascript, a potem przeglądarka wykonała je naraz.
(przy założeniu że kod jest poprawny).
em1X
Cytat(timon27 @ 15.01.2014, 19:28:07 ) *
Widzę że nie rozumiesz działania php smile.gif
Więc: kod php zawsze wykonuje się po stronie serwera.
Gdy się całkowicie wykona to gotowe źródło strony jest wysyłane do klienta.


Widzę, że sam nie rozumiesz. "Nie znam się to się wypowiem" ? smile.gif

Wracając do tematu, żeby ten sposób zadziałał, dyrektywy z php.ini:
- output_buffering powinna być ustawiona na małym poziomie lub w ogóle wyłączona,
- zlib.output_compression powinno być wyłączone,
Warto też wysłać przeglądarce nagłówki wyłączające cache.

Swoją drogą, dokumentacja funkcji flush sporo w temacie opisuje.
com
em1X php tak działa jak opisał, on wypluwa przekomilowany kod do htmla, tylko nie jest prawda to ze wykonuje w tym czasie też js bo to już się robi po stronie klienta co zresztą napisał ale chyba faktycznie nie rozumiało czy mówi..
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.