Generovanie formulára

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Spikee
Člen | 2
+
0
-

Ahoj, pracujem na náhodnom generovaní kvízov/testov a mám problém s tým, že po vygenerovaní formulára (select … order by rand()) a jeho odoslaní sa pri vyhodnocovaní vygeneruje ešte raz a tým pádom sa odpovede priradia iným otázkam. Ako sa to má riešiť? Robil som to cez session, ale nejako to nie je spoľahlivé…

nAS
Člen | 277
+
0
-

Po odeslání formuláře je třeba uživatele přesměrovat na stránku s výsledky, což bude typicky jiný pohled, ve kterém už se nebudou generovat otázky.

Doporučuju prostudovat článek na Zdrojáku.

_Martin_
Generous Backer | 679
+
0
-

Též by bylo dobré při odesílání formuláře odeslat i id testu (či mnohem lépe: mít id aktuálního testu v session) a při existenci takového id volit jiný SQL dotaz.

	// před definicí formuláře
	if (isset($...['id'])) {
		$result = ... "WHERE id = $id" ...
	}

	if (!isset($result) || !$result) {
		$result = ... "ORDER BY RAND()" ...
	}

Kód je samozřejmě jen ukázka, takže si žádá dopsání a drobné úpravy.