Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: ZAJDAN 29. 04. 2016, 10:07:31
-
Ahoj...
ajaxem odesílám xml(svg) do php ktere to zpracuje a ulozi do souboru na serveru. Pokud si v Ajaxu na success dam funkci
success: function(data){ alert(data);},
a do php dam echo az nakonec, vybehne mi ten alert skutecne az kdyz je soubor plne ulozen?
nejsem si jist jak PHP zpracovava kod
....zda echo vrati az kdyz ma vsechny predesle procesy hotove. V php soubor ukladam pomoci fopen, fwrite
diky
-
php jede linearne bez vlaken, pokud ta data neposles do nejakyho jinyho procesu a mas osetrene ze ukladani nespadne treba na pravech filesystemu tak ti to echo dava skutecne az probehne vse predchozi
-
No ještě ten soubor určitě zavřete fclose() To ale asi děláte. Pokud byste nedělal, mohl by se možná zavřít automaticky po skončení skriptu, což je až po tom echo.
Soubor máte jedinečný, aby nedošlo k nějakému konkurenčnímu zápisu, že? Můžete si ho pro jistotu zamknout, člověk nikdy neví.
Samotný fsync si z php asi nezavoláte, jedině pomocí exec() a to jen pokud operační systém něco jako příkaz sync obsahuje.
-
diky vsem za reakce...
ano fclose pouzivam
ovsem jedinecnost souboru ne a to proto ze jeden php script ten soubor(xml/svg) prevezme a ulozi a druhy php script ho vlozi do generovaného PDF. Nemám zkusenost jak si mezi temito PHP scripty predat nazev souboru(dejme tomu s nahodne generovanym prefixem) .
-
tak to je skutecny fail.
zkus pouzit treba DB, session id nebo whatever