Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Multiple reCAPTCHAs in one ASP.Net page

It is possible to add multiple reCAPTCHAS in one form? I tried doing so, even giving the multiple reCAPTCHAS different IDs, but when I load the page in the browser, only one of them is shown.

Is this by design? I need the two reCAPTCHAS because one is for Login, and the other one is for the Register form, which will be shown on the same page.

Thanks! WT

like image 622
Donnie Thomas Avatar asked Jun 23 '09 18:06

Donnie Thomas


4 Answers

Only one Cpatcha is supported in a page at any time. What you can do is use AJAX and lod captcha after the form is loaded.

This might of some help.

like image 157
Shoban Avatar answered Nov 02 '22 16:11

Shoban


After a quick google search, it appears that it's not currently possible. One suggestion I saw was to pop up a modal recaptcha just as the user submits the form. ondemandcaptcha for Ruby.

like image 25
Greg Avatar answered Nov 02 '22 15:11

Greg


I was initially lead by this thread to believe there is no simple answer, but after digging through the Recaptcha ajax library I can tell you this isn't true! TLDR, working jsfiddle: http://jsfiddle.net/Vanit/Qu6kn/

It's possible to overwrite the Recaptcha callbacks to do whatever you want with the challenge. You don't even need a proxy div because with the overwrites the DOM code won't execute. Call Recaptcha.reload() whenever you want to trigger the callbacks again.

function doSomething(challenge){
    $(':input[name=recaptcha_challenge_field]').val(challenge);
    $('img.recaptcha').attr('src', '//www.google.com/recaptcha/api/image?c='+challenge);
}

//Called on Recaptcha.reload()
Recaptcha.finish_reload = function(challenge,b,c){
    doSomething(challenge);
}

//Called on page load
Recaptcha.challenge_callback = function(){
    doSomething(RecaptchaState.challenge)
}

Recaptcha.create("YOUR_PUBLIC_KEY");
like image 20
Vanit Avatar answered Nov 02 '22 16:11

Vanit


It is now possible to do this easily with explicit recaptcha creation. See my answer here:

How do I show multiple recaptchas on a single page?

like image 35
Hüseyin Yağlı Avatar answered Nov 02 '22 14:11

Hüseyin Yağlı