Chodzi o pasek postepu i jego stala aktualziacje na podstawie danych wyslanych przez PHP a pobieranych AJAXem.
Do serwera wysylam rzadanie AJAXem. Gdy skrypt skonczy dzialanie, AJAX pobiera dane wynikowe, ktore przekazal skrypt.
Ciekaw jestem czy jest jakas mozliwosc pobierania na biezaco danych, ktore przesyla skrypt jako odpowiedz AJAXowa.
Nieco bardziej to zobrazuje.
Wysylam rzadanie do serwera za pomoca AJAXa. Serwer przetwarza to rzadanie i co kazdy przetworzony element przygotwuje odpowiedz powiedzmy w formie cyfry (0-100) oddzielonej nowa linia.
Jako, ze po przetworzeniu jednego elementu, skrypt nie konczy dzialania, a caly czas je przetwarza, po kazdym przetworzonym elemencie wysyla (a raczej dopisuje do odpowiedzi) cyfre + nowa linie.
Czyli np tak:
Kod
1
2
3
4
5
6
... itd.
2
3
4
5
6
... itd.
Oczywiscie miedzy tymi "cyframi" sa dluzsze lub krotsze przerwy w wypisywaniu kolejnej pozycji.
Dzialanie np jquery jest takie, ze oczekuje on na zakonczenie calej operacji - czyli kiedy skrypt zakonczy calkowicie dzialanie, i dopiero wtedy przekazuje cala odpowiedz.
Mnie natomiast chodzi o to, aby po kazdej nowej linii otrzymac ta odpowiedz, moc wykonac jakas operacje (w tym przypadku zwiekszyc graficzny pasek postepu) i oczekiwac na kolejna linie.
Tak samo jakbym nasluchiwal socketami na okreslonym porcie.
Czy jest to wykonalne za pomoca AJAXa w takiej formie jak opisuje?
Innym rozwiazaniem tego bylo by po prostu wyslanie rzadania do serwera. Ten zakonczy polaczenie z przegladarka ale nadal bedzie sie wykonywal i po kazdym przetworzonym elemencie dopisywal by je do jakiegos pliku logow albo do bazy.
Nastepnie co 1s. odpalal bym innego AJAXa z rzadniem o pobranie aktualnego statusu przetwarzanego rzadania.
Co sadze tez jest dobrym rozwiazaniem
