automatické odesílání formuláře

2009-11-13 Tema obsahu tomasjurman
Dobrý den

vytváříme jednoduchou web aplikaci ve které si přihlášený student může spustit 
test (např z Matematiky, ČJ, Přírodovedy). Jedná se o obyčejný HTML formulář, 
který po vyplnění a zaškrtání odpovědí student odešle na server k automatickému 
vyhodnocení.

Čas testu musí být časově omezen. Po stanovené době se musí test automaticky 
ukončit a odeslat na server ke zpracování .

Toto chování jsem nejprve implementoval pomocí JavaScriptu:

   1. Po spuštění testu se na klientský PC uloží cookie obsahující čas ukončení 
testu.
   2. V pravidelném časovém intervalu se kontroluje aktuální čas s časem 
uloženým v cookie. ( používá window.setInterval() )
   3. Formulář se odešle pokud je aktuální čas větší než čas v cookie.


Řešení se ukázalo jako nespolehlivé. Existuje nějaká možnost jak toto chování 
řídit na straně serveru?
Aplikace je napsaná v Jave na Spring 2.5

Děkuji za pomoc.
Tomáš Jurman


Re: automatické odesílání formuláře

2009-11-13 Tema obsahu Tomas Beranek

slo by Ajaxem ze stranky zjistovat, kdy byl formular odeslan k uzivateli
a podle odpovedi uz se pak nejak zachovat primo na strance.
+ samozrejme jeste kontrola na serveru po odeslani uzivatelem

Ovce


- Original Message - 
From: tomasjur...@email.cz

To: konference@java.cz
Sent: Friday, November 13, 2009 11:06 AM
Subject: automatické odesílání formuláře


Dobrý den

vytváříme jednoduchou web aplikaci ve které si přihlášený student může 
spustit test (např z Matematiky, ČJ, Přírodovedy). Jedná se o obyčejný HTML 
formulář, který po vyplnění a zaškrtání odpovědí student odešle na server k 
automatickému vyhodnocení.


Čas testu musí být časově omezen. Po stanovené době se musí test automaticky 
ukončit a odeslat na server ke zpracování .


Toto chování jsem nejprve implementoval pomocí JavaScriptu:

  1. Po spuštění testu se na klientský PC uloží cookie obsahující čas 
ukončení testu.
  2. V pravidelném časovém intervalu se kontroluje aktuální čas s časem 
uloženým v cookie. ( používá window.setInterval() )

  3. Formulář se odešle pokud je aktuální čas větší než čas v cookie.


Řešení se ukázalo jako nespolehlivé. Existuje nějaká možnost jak toto 
chování řídit na straně serveru?

Aplikace je napsaná v Jave na Spring 2.5

Děkuji za pomoc.
Tomáš Jurman 



Re: automatické odesílání formuláře

2009-11-13 Tema obsahu Martin Beránek
Dne Pá 13. listopadu 2009 11:06:29 tomasjur...@email.cz napsal(a):
 Dobrý den
 
 vytváříme jednoduchou web aplikaci ve které si přihlášený student může 
 spustit test (např z Matematiky, ČJ, Přírodovedy). Jedná se o obyčejný HTML 
 formulář, který po vyplnění a zaškrtání odpovědí student odešle na server k 
 automatickému vyhodnocení.
 
 Čas testu musí být časově omezen. Po stanovené době se musí test automaticky 
 ukončit a odeslat na server ke zpracování . 
 
 Toto chování jsem nejprve implementoval pomocí JavaScriptu:
 
1. Po spuštění testu se na klientský PC uloží cookie obsahující čas 
 ukončení testu.
2. V pravidelném časovém intervalu se kontroluje aktuální čas s časem 
 uloženým v cookie. ( používá window.setInterval() )
3. Formulář se odešle pokud je aktuální čas větší než čas v cookie.
 
 
 Řešení se ukázalo jako nespolehlivé. Existuje nějaká možnost jak toto chování 
 řídit na straně serveru?
 Aplikace je napsaná v Jave na Spring 2.5
 

jak už tu psal Martin Kuba, bez JS se neobejdete. Jenom to cookie mě připadá 
jako komplikace.

Pro tento případ si dokážu představit, že pokud si uživatel vypne javascript a 
tím pádem nestihne odeslat formulář včas, můžou se mu začít strhávat body za 
pozdní odeslání.

-- 
Martin Beránek
mailto:martin.bera...@i.cz
http://www.i.cz