Swear Posted March 21, 2011 Report Share Posted March 21, 2011 $.ajax({ type: "POST", url: 'test.php', data: "test="+$("#var").val(), complete: function(data){ $("#response").append(data.responseText); } }); tātad man ir šāds jQuery kods kas pa POST padod vienu variabli un atpakaļ saņemto tekstu iekrauj iekš #response. Problēma ir tāda ka gadījumā ja šis teksts ir liels un ilgi lādējas (Piemēram echo '1'; sleep(1); echo '2'; sleep(1); echo '3'; sleep(1);) tas tiek parādīts tikai kad kad skripts tiek pabeigts. Bet vajadzētu panākt to lai vislaik parāda outputu kā tik skripts kautko izvada. Vai tas maz ir iespējams? Quote Link to comment Share on other sites More sharing options...
briedis Posted March 21, 2011 Report Share Posted March 21, 2011 Es teiktu, ka tas nav iespējams, vismaz ne ar šiem jquery līdzekļiem. Vel ieteiktu papētīt par output bufferi. http://php.net/manual/en/function.ob-flush.php Tāds nesmuks risinājums - izmantot iframe un visu laiku flushot to buferi... Quote Link to comment Share on other sites More sharing options...
Swear Posted March 21, 2011 Author Report Share Posted March 21, 2011 Skaidrs, tā jau likās. nu neko, paldies. būs vien jāmēģina iztikt tāpat. Quote Link to comment Share on other sites More sharing options...
Zefirs Posted March 21, 2011 Report Share Posted March 21, 2011 Vai php nevar nočekot cik liels ir teksts, un ja tas ir tiešām liels sadalīt pa gabaliem un arī tādā pašā garā pa gabaliem sūtīt. Reāli jāpanāk, lai js nočeko izmēru un tad arī nodrošina pa daļām sūtīšanu. Vai kas tāds ir iespējams? Quote Link to comment Share on other sites More sharing options...
briedis Posted March 21, 2011 Report Share Posted March 21, 2011 Vai php nevar nočekot cik liels ir teksts, un ja tas ir tiešām liels sadalīt pa gabaliem un arī tādā pašā garā pa gabaliem sūtīt. Reāli jāpanāk, lai js nočeko izmēru un tad arī nodrošina pa daļām sūtīšanu. Vai kas tāds ir iespējams? Sūds ir sadaļīt tekstu daļās, bet vairs nav tik vienkārši realizējama ši saņemšana JS pusē. Ar kaut kādiem websocketiem jau šī lieta būtu vieglāka, bet nu savādāk sanāk muhļīties ar ajax'i, un šaubos, vai iegūtais rezultāts atspēkos ieguldīto darbu. Ko tu centies vispār panākt? Quote Link to comment Share on other sites More sharing options...
Swear Posted March 21, 2011 Author Report Share Posted March 21, 2011 Pieņemsim tiek iedots kāds pieprasījums apstrādāt datus/failus, vai ko citu, kas dara kādu procesu un reizē izvada kas notiek. gribētos to visu redzēt uzreiz nevis pēc minūtēm, kad viss jau gatavs. šeit tāds pats jautājums, atbildes nav. izmeklējoties visu, tas tiešām laikam nav iespējams. atausa viena ideja, kautkas saistīts ar php-cgi, ka viņš izvada uzreiz saturu no kautvai file_get_contents(). varbūt kautkā zem vēl citām funkcijām varētu panākt vēlamo rezultātu, bet nu jā, priekš tām visām pūlēm tas nav tik svarīgi. Quote Link to comment Share on other sites More sharing options...
briedis Posted March 21, 2011 Report Share Posted March 21, 2011 Bet kas liedz ik pa 5 sek. teiksim sūtīt pieprasījumus? Viens process dara savu darāmo un kaut kur (db?) pieglabā savu statusu. Tad ar ajax prasam citam php skriptam, kas atgriež to stāvokli... Quote Link to comment Share on other sites More sharing options...
daGrevis Posted March 22, 2011 Report Share Posted March 22, 2011 Wordpress'ā... instalējot "plugin'us" ir kas līdzīgs. Quote Link to comment Share on other sites More sharing options...
Swear Posted March 22, 2011 Author Report Share Posted March 22, 2011 diezvai kas līdzīgs. ir domāts ka kautvai tar'o kādus sistēmas failus verbose modē un izvada kas notiek. Izdomāju ka varētu kautkā fonā palaist to darbību un visu notiekošo rakstīt iekš kāda text faila, kuru pēctam ajax nolasītu. bet tāpat tas būtu diezgan sarežģīti jo javaskriptam būtu jāturpina refrešot info, kamēr neieraudzītu tekstu, ka darbība ir pabeigta. anyway, paldies, iztikšu tāpat. nav tik svarīgi tas viss, lai ieliktu tādas pūles, vienkārši domāju varbūt ir kāds vienkāršāks veids. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.