Nová reCAPTCHA pro formuláře
- revoke
- Člen | 36
@uestla Ano, taky si to myslím. Nemám teď ale prostor hledat
řešení, navíc se zrovna tento formulář obejde i bez AJAXu. Myslel jsem,
že je potíž na mé straně, ale on to tak asi nikdo nepoužívá.
Každopádně díky.
P.S.: oprav prosím ten link na recaptchu, třeba se na to kouknu později
- uestla
- Backer | 799
@revoke Na GitHub na tohle někdo zadával Issue – https://github.com/…ol/issues/20
Je tam i odkaz na Gist, ale nezkoušel jsem to.
- duskohu
- Člen | 778
Ahojte snazim sa rozchodit Invisible reCAPTCHA, nacitavam recaptcha.ajax.js
ale stale sa mi zobrazuje verzia, kde musim zaskrtavat nie som robot. Neviete mi
poradit co mam zle?
- duskohu
- Člen | 778
Vyriesil som to tak ze som zmenil recaptcha.ajax.js na recaptcha.Invisible.ajax.js, len neviem ci je to spravne.
- jAkErCZ
- Člen | 324
uestla napsal(a):
@jAkErCZ Ahoj, jakou verzi používáš? Argument
$required
už neexistuje. Jsi schopný debuggerem zjistit, jestli reálně dojde k validaci? Případně prosím o minimální setup, abych byl schopen to reprodukovat.
Ahoj,
používám
Config:
Ale ani to nevaliduje je to tam sice vidět dá se na to kliknout ale formulář to absolutně ignoruje.
Editoval jAkErCZ (9. 6. 2020 16:25)
- uestla
- Backer | 799
Aha, ale tohle je vlákno pro tuhle recaptchu: https://github.com/…ptchaControl
contributte recaptchu, kterou používáš, už tu pár lidí řešilo – podívej se třeba na https://forum.nette.org/…-se-formular, jestli tam nenajdeš odpověď.
- jAkErCZ
- Člen | 324
uestla napsal(a):
@jAkErCZ To je poměrně závažné, mohl bys mi prosím připravit izolovaný příklad, abych to mohl reprodukovat?
No mám to řešené takto.
a v Latte:
A v tomto případě pokud vyplním všechny pole a nezašrtnu captchu tak i tak formulář projde beze změny a ani funkce {$form[‚recaptcha‘]->getError()} a ani $form->errors nec neodchytne.
Editoval jAkErCZ (13. 10. 2020 19:44)
- uestla
- Backer | 799
@jAkErCZ Zkus místo onSubmit[]
použít
onSuccess[]
a otestovat, že se ti formulář zpracuje, i když
nevyplníš reCAPTCHu.
Pokud to neprojde, zkus si oddebugovat, jestli za to nemůže tenhle try-catch,
případně si vytáhni Validator z DI containeru a přidej si do
$onError
logování při nastalé chybě…
- jAkErCZ
- Člen | 324
uestla napsal(a):
@jAkErCZ Zkus místo
onSubmit[]
použítonSuccess[]
a otestovat, že se ti formulář zpracuje, i když nevyplníš reCAPTCHu.Pokud to neprojde, zkus si oddebugovat, jestli za to nemůže tenhle try-catch, případně si vytáhni Validator z DI containeru a přidej si do
$onError
logování při nastalé chybě…
Super tak opravdu stačilo použít jen onSuccess[]
jen ještě
dotaz používám live-form-validation
a chce se zeptat jak by šlo přidat aby to validovalo i reCaptchu?
- uestla
- Backer | 799
@jAkErCZ onSubmit
se totiž vykoná po každém
odeslání formuláře nezávisle na tom, jestli je validní nebo ne – pozor
na to.
Ohledně JS validace reCAPTCHy tě odkážu na oficiální dokumentaci: https://developers.google.com/…cs/invisible#…
Ale v podstatě by mělo jít pouze o volání
grecaptcha.execute()
při validaci formuláře.
- jAkErCZ
- Člen | 324
uestla napsal(a):
@jAkErCZ
onSubmit
se totiž vykoná po každém odeslání formuláře nezávisle na tom, jestli je validní nebo ne – pozor na to.Ohledně JS validace reCAPTCHy tě odkážu na oficiální dokumentaci: https://developers.google.com/…cs/invisible#…
Ale v podstatě by mělo jít pouze o volání
grecaptcha.execute()
při validaci formuláře.
Super díky za rady :)