For the customers we target, some elderly people find it hard to see och interpret many of the recaptcha images. Are there any simpler alternative? For example, some robot controllers ask you to write the sum of two number (e.g. Enter the sum of "4" and "8"). Although we would risk some more robot form submits using a simpler control, we also face losing potential elder customers when using a too hard recaptcha.
Yeah, image based captchas suck in general and they're not very user friendly or accessible.
Unfortunately there is not an option to do what you think about out of the box. Don't know if it's possible to use a hidden field and set some conditions somehow perhaps.
I made a simple solution for so long (future will tell if it enough to avoid spamrobots): Add a mandatory text field and instruct the user to write a code in a specific format which is checked by regex. For example, "Enter any 3 digits followed by any five characters".
I have a little one i have used ona few of my client sites. Granted they are relatively low traffic but it appears to work ok.
At the top of my contatc page i create two random numbers in variables like so:
int aNumber = new Random().Next(1, 3);
int bNumber = new Random().Next(1, 11);
These two numbers are then displayed to the user. They have to add them together and enter the result into a field.
I then request the field and do a check like so:
var capchaCheck = Request.Form["captchaCheck"].AsInt();
var nA = Request.Form["nA"].AsInt();
var nB = Request.Form["nB"].AsInt();
if (capchaCheck == (nA + nB))
{
If the captcha check field is equal to the two numbers added together (the user has added the numbers correctly) then do some stuff with your contactform.
}
This can sit inside any sort of validation you have. the validation can come before or after the captcha check.
Definitely +1 for the honeypot idea, we implemented on a form on a contract I was working on (not related to Umbraco) and it worked really well (ie we did not get any complaints about the ReCaptcha or whatever else being difficult to see/operate/understand).
Honeypot seemed the best solution from a usability perspective since it did not rely on the user to do anything extra. Non-js users can be served by making the label of the field something like "do not fill in this form, admin use only" or something like that. We couldn't really see a down side to it.
Umbraco forms: Simpler alternative to Recaptcha?
Hi,
For the customers we target, some elderly people find it hard to see och interpret many of the recaptcha images. Are there any simpler alternative? For example, some robot controllers ask you to write the sum of two number (e.g. Enter the sum of "4" and "8"). Although we would risk some more robot form submits using a simpler control, we also face losing potential elder customers when using a too hard recaptcha.
Any hint is greatly appreciated.
Regards,
Martin
Hi Martin
Yeah, image based captchas suck in general and they're not very user friendly or accessible.
Unfortunately there is not an option to do what you think about out of the box. Don't know if it's possible to use a hidden field and set some conditions somehow perhaps.
So you'll need to expand the functionality - Try reading about how to add custom code here https://github.com/umbraco/UmbracoFormsDocumentation/blob/master/Developer/Custom-Markup/index.md - All the documentation for forms can be found here https://github.com/umbraco/UmbracoFormsDocumentation/blob/master/Developer/index.md
Hope this helps.
/Jan
Thanks Jan! I will see if I find an alternative.
Hi Martin
You're welcome - I hope you will share when you figure out something so others can benefit as well :)
/Jan
Hi,
I made a simple solution for so long (future will tell if it enough to avoid spamrobots): Add a mandatory text field and instruct the user to write a code in a specific format which is checked by regex. For example, "Enter any 3 digits followed by any five characters".
//Martin
@Martin, you could consider using a honeypot.
Hello there,
I have a little one i have used ona few of my client sites. Granted they are relatively low traffic but it appears to work ok.
At the top of my contatc page i create two random numbers in variables like so:
int aNumber = new Random().Next(1, 3);
int bNumber = new Random().Next(1, 11);
These two numbers are then displayed to the user. They have to add them together and enter the result into a field.
I then request the field and do a check like so:
var capchaCheck = Request.Form["captchaCheck"].AsInt();
var nA = Request.Form["nA"].AsInt();
var nB = Request.Form["nB"].AsInt();
if (capchaCheck == (nA + nB))
{
If the captcha check field is equal to the two numbers added together (the user has added the numbers correctly) then do some stuff with your contactform.
}
This can sit inside any sort of validation you have. the validation can come before or after the captcha check.
I hope this helps :)
Thanks James,
But how do I implement this check with Umbraco Forms? Would I have to make changes inside the default form scipt?
Thanks for the HoneyPot link...got me thinking and managed to implement something around an existing form.
Definitely +1 for the honeypot idea, we implemented on a form on a contract I was working on (not related to Umbraco) and it worked really well (ie we did not get any complaints about the ReCaptcha or whatever else being difficult to see/operate/understand).
Honeypot seemed the best solution from a usability perspective since it did not rely on the user to do anything extra. Non-js users can be served by making the label of the field something like "do not fill in this form, admin use only" or something like that. We couldn't really see a down side to it.
is working on a reply...