| PHP console like output | ||
|---|---|---|
|
SlimDeluxe
10. nov 2011 09:35:49
Pridružen od: 29. apr 2010 1223 objav 1022 144 9 |
#1
Zdravo, Npr. parsanje XML. Najbolj simple je, da proces, ki dela uvoz, piše v en file, ta se pa prek AJAX-a naloži v div, vendar potem se ta zadeva uporabniku ne prikazuje zaporedno, ampak se vedno refresha cel file... Kar je načeloma ok, vendar ni perfektno. Drugi način je z bazo, samo je malo bolj zahteven. Je že kdo kdaj naredil/videl kaj takega (brez Java appleta)? Freelance Web Developer
|
|
|
bostjan
10. nov 2011 10:09:31
Pridružen od: 31. jul 2008 643 objav 689 30 9 |
#2
Poglej si progress bar od zend FW-ja (jspush in jspull adapterja) http://zendframework.com/manual/en/zend.progressbar.introduction.html |
|
|
SlimDeluxe
10. nov 2011 11:32:47
Pridružen od: 29. apr 2010 1223 objav 1022 144 9 |
Freelance Web Developer
|
|
|
AteljeIT
10. nov 2011 13:20:48
Pridružen od: 29. okt 2011 22 objav 38 0 0 |
#4
Obstaja način, ki dejansko pušča AJAX request connection odprt, to si imenuje long polling ali commet. Kar se tiče serversida lahko delas json ali xml, v katerega zapises ID vrstice in dejanski message. V userjev session spremnjlivko shranis zadnjo prikazano vrstico, ki je bila poslana skozi AJAX. Torej, ko bo javascript naredil naslednji request ze na nivoju streznika pogledas ce so v jsonu/xmlju vrstice z IDjem večjim od tistega v SESSION-u za tega userja in ce so posljes userju nazaj samo tiste vrstice. Ce je session prazen posljes vse vrstice in zapises zadnjo, ce je vrstica v sessionu enaka zadnji v json/xml ne posljes nazaj nic. |
|
|
AteljeIT
10. nov 2011 13:34:45
Pridružen od: 29. okt 2011 22 objav 38 0 0 |
#5
Torej recimo $_SESSION'pollinglastline' naj ti bo tisti pointer, ki ti pove do kam je user videl output. Ker je session globalna in persistant spremenljivka, tega podatka ne bos izgubil, tudi ce delas vec locenih AJAX requestov. Samo eno opozorilo: Skripta, ki nalozi to stran, na kateri bos imel perodicni loader ali long polling, naj poresitira session spremenljivko, tako da bos kljub refreshu cele strani videl splet kompleten ajax/xml. |
|
|
kelvan
14. nov 2011 00:48:41
Pridružen od: 19. okt 2007 891 objav 658 122 26 |
#6
najbolj enostavno je, da ko aploudaš, da form kaže na isti fajl. ko začneš s procesiranjem, začneš tudi z info izpisi in za vsakim daš flush. Div, kjer se izpisujejo podatki, ima jasno črno ozadje in zelene courier fonte :) |
|