Campo oculto para reemplazar el CAPTCHA de forma más accesible.
¿Qué es un CAPTCHA?
- Es una imagen con caracteres distorsionados (números y/o letras) para que las personas identifiquen y reescriban.
- Suele incluirse como paso previo antes de enviar un formulario o al ingresar a una aplicación como forma de seguridad.
- y dado que el desafío no lo podrá resolver una máquina para enviar comentarios automáticos (spam), esta no podrá ingresar.
¿Cuál es la problemática del CAPTCHA?
El inconveniente es que las personas con:
- baja o nula visión
- daltonismo
- problemas cognitivos
- o bajos niveles de educació
… pueden fallar reiteradamente en entender los caracteres y no podrán acceder (quedando del mismo lado que los robots programados!).
Inclusión de un campo oculto como alternativa más accesible:
Una opción sería incorporar un CAPTCHA sonoro; pero otra posibilidad, sería incluir un campo invisible (que para los no videntes aclare que no debe ser completado). Y programar que si el campo se completa, no se realice el envío.
Las personas no lo completarán, pero los robots automatizados sí.
Y de este modo se les bloqueará el acceso.
Ejemplo de código:
<html>
<head>
<title>Formulario con campo oculto</title>
<style>
#oculto{ display:none;}
</style>
<?php
if(isset($_POST['oculto'])&&($_POST['oculto']!=”"))
{
echo ‘es un robot’;
}
else {if(isset($_POST['nombre'], $_POST['apellido']))
{
echo ‘es una persona’;
}
}
?>
</head>
<body>
<form action=”formulario.php” method=”post” enctype=”multipart/form-data”>
<label title=”nombre”>Nombre:</label><input type=”text” />
<label title=”apellido”>Apellido:</label><input type=”text” />
<input name=”oculto”/>
<input value=”Enviar” />
</form>
</body>
</html>
Esta alternativa impediría que los robots spammers puedan ingresar, siempre y cuando nadie programe específicamente uno contra nuestro sitio.
Colaboración: Programadora Daniela Rositto
Hola Verónica,
Buena idea. Yo añadiría una cosa. Que el campo oculto se llamara “email”. Y en el caso de tener un campo visible, destinado al e-mail del usuario, llamarlo “correo” por ejemplo.
No conozco el funcionamiento de los spammers y los criterios en los que se basan, pero casi seguro que los campos con nombre “email” son su objetivo prioritario por motivos evidentes. Creo que esto ayudaría más a que “picaran”.
Saludos