Autor Zpráva
imploder
Profil
PHP skript nabídne uživateli soubor ke stažení (vyskočí klasické okýnko, co s ním udělat - uložit, otevřít, nebo nic). Můžu nějak zjistit, jestli uživatel ten soubor uložil? Tuším, že odpověď bude "ne, nejde to", ale chci se ujistit, jestli někdo neví o způsobu, jak to udělat. Pokud možno standardním způsobem fungujícím ve všech běžných prohlížečích (tedy ne využití nějaké historické speciality IE nebo tak něco). Je nějaký způsob, jak to udělat?
Joker
Profil
imploder:
Tuším, že odpověď bude "ne, nejde to"
Přesně tak.
1. Z pohledu serveru (kam až může server u uživatele "dohlédnout") není mezi "Otevřít" a "Uložit" vůbec žádný rozdíl.
2. Server odešle data, ale nedozví se, jestli si uživatel data taky uložil.

HTTP není stavěný na sdílení souborů, pokud je potřeba ten přenos nějak detailně sledovat, doporučil bych použít nějaký jiný prostředek.
imploder
Profil
Tak to jsem si právě myslel.

Jde o soubor s nastavením a má se kontrolovat, jestli jsou v něm neuložené změny. Tak nezbývá než předpokládat, že uživatel není trubka a uloží to, jinak prostě bude "uloženo" i když to ve skutečnosti nebude pravda (nic hrozného se neděje, i když lepší by samozřejmě bylo kdyby to vždycky mělo pravdu).
tiso
Profil
imploder: čo takto u klienta zistiť čas uloženia toho súboru, zavolať akciu sťahovania a potom sledovať či je súbor novší? Nerozumiem presne o čo ide, skús to lepšie popísať.
DoubleThink
Profil *
Tuším, že odpověď bude "ne, nejde to"
Všechno jde. Kdybych opravdu potřeboval zajistit (a ověřit), že si uživatel soubor skutečně uložil (tj. zachytit i stav, kdy si mozilla soubor přednačte, ale uživatel pak klikne na storno), asi bych použil Flash. Například pomocí flash.net.FileReference.save().
imploder
Profil
tiso
čo takto u klienta zistiť čas uloženia toho súboru, zavolať akciu sťahovania a potom sledovať či je súbor novší? Nerozumiem presne o čo ide, skús to lepšie popísať.
Je to v podstatě takový online-editor - změny v něm provedené si uživatel uloží do souboru na svůj disk a později je může kdykoliv znovu nahrát - podobně jako u obyčené lokální aplikace. Ukládání je řešené právě tak, že se soubor stáhne. Po odeslání souboru klientovi už nemám možnost zjistit, co s ním udělal, takže tohle co říkáš nepůjde.

DoubleThink
Díky za tip. Dávat tam flash ale kvůli něčemu takovému opravdu nechci. Bez ověřování to bude stačit, jak říkám nijak zásadní to není.
tiso
Profil
imploder: v tom prípade ideš na to úplne zle... Napadajú mi 3 možnosti:
1. zostaneš na úrovni server - užívateľ si nahrá súbor, tam s ním pracuje, potom stiahne, po skončení práce si server nič nepamätá
2. ako 1., len pridáš pamätanie si súborov na serveri, najlepšie i prihlasovanie
3. klient-server aplikácia, len k tomu asi budeš musieť použiť niečo iné ako PHP

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: