Neodhalitelná chyba při odeslání formuláe

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

Mám tady takovej neřešitelnej problém. Při odeslání formuláře se mi nezavolá callback, který mám napojený na $form->onSuccess[]. Zkoušel jsem si nechat vypsat chyby napjením callbacku na $form->onError[], ale zdá se, že žádné chyby tam nejsou. Dokonce jsem si odeslání ověřit ve Firebugu. Když jsem se v něm podíval na záložku POST tak to příslušná data odeslalo správně. Setkal se s podobným problémem někdo už dříve?

David Matějka
Moderator | 6445
+
0
-

vytvaris Nette\Application\UI\Form?

fary
Člen | 155
+
0
-

prave že ano

Šaman
Člen | 2668
+
+1
-

Jestli je to neodhalitelná chyba a neřešitelný problém, tak pak je ztráta času to řešit a odhalovat :D

Jestli myslíš, že to není neřešitelný, tak pošli nějaký kód. Takhle od boku mě napadá – zkus nejprve nahradit onSuccess[] za onSubmit[]. Jestli to bude fungovat, tak při odeslání nějaká chyba byla.

A druhá možnost je, že ten formulář nějak divně generuješ a po requestu ho vygeneruješ s jinými poli (nedávno to tu někdo řešil, když měl ve formuláři náhodné otázky). Nette při zpracování údajů z POSTu páruje přijatá data s prvky formuláře a pokud příslušné pole nenajde, tak data zahodí (je to ochrana proti podstrčení falešných polí přímou editací hlavičky).

akadlec
Člen | 1326
+
0
-

tak nezbyde nic jiného než odtrasovat, někde se ti to musí zaseknout/přeskočit. Ale chce to vidět ukázku kodu, takto z koule tady nikdo nic nevyvěští

JakubJarabica
Gold Partner | 184
+
0
-

Renderuješ formulár ručne? Nezabudol si v šablóne vykresliť nejaké form field?

akadlec
Člen | 1326
+
0
-

to by mu vyhodilo onError a ten má prý nevyhozen

Caine
Člen | 216
+
0
-

Nepouzivas treba toto?

$form->onSuccess[] = $this->formSubmitted; //Nette vychytavka, ale PHP to nativne neumi

misto

$form->onSuccess[] = [$this, 'formSubmitted'];