Anunciese Aquí

Registro automático

Acceder con Twitter

top articulo
twitter
facebook
Rss
sábado 20 de abril del 2024
Lea, publique artículos gratis, y comparta su conocimiento
Usuario Clave ¿Olvidó su clave?
¿Iniciar sesión automáticamente en cada visita?
Inserte su correo electronico

Sistema captcha en php

veces visto 2951 Veces vista   comentario 0 Comentarios

La idea básica para crear un Captcha es generar primero un texto aleatorio, luego basado en este texto generamos una imagen la cual se muestra al usuario, finalmente se compara el texto ingresado por el usuario con la palabra aleatorio generada.

Generar el Captcha

La primero es crear una imagen con un texto aleatorio, para ello un archivo llamado captcha.php el cual creará dinámicamente el texto. Para ello creamos una función llamada randomText que se encarga de generar una cadena de texto aleatorio, acepta un parámetro el cual le indica cuantos caracteres puede tener el texto generado.

Código // archivo: captcha.php

function randomText($length) {

$pattern = "1234567890abcdefghijklmnopqrstuvwxyz";

f or($i=0;$i<$length;$i++) {

$key .= $pattern{rand(0,35)};

}

return $key;

}

Lo siguiente es crear una variable de sesión para guardar el texto generado, luego de ello tomamos una imagen que contiene el fondo para el captcha en nuestro caso la imagen es bgcaptcha.gif, luego creamos el texto sobre esta imagen para luego mostrarla en el navegador como imagen enviándole un header indicando el tipo de archivo.

Código session_start();

$_SESSION['tmptxt'] = randomText(8);

$captcha = imagecreatefromgif("bgcaptcha.gif");

$col Text = imagecolorallocate($captcha, 0, 0, 0);

imagestring($captcha, 5, 16, 7, $_SESSION['tmptxt'], $colText);

header("Content-type: image/gif");

imagegif($captcha);

Crear el formulario para verificar el Captcha

Lo siguiente es mostrar la imagen generado para que el usuario pueda leerlo e ingresar el texto en el formulario para ser verificado. Naturalmente esta verificación será parte de un formulario mucho mas grande pero solo incluimos un campo para propósitos de ejemplo. Esto lo incluimos en el archivo captchademo.php, note que al incluir la imagen hemos colocado la ruta al php que genera la imagen.

Código Ingresar el texto mostrado en la imagen

Verificar el texto Ingresado

Lo siguiente es verificar el texto ingresado en el formulario y compararlo con la variable $_SESSION['tmptxt'] que contiene el texto generado aleatoriamente. Para ello verificamos que se haya enviado el formulario y luego comparamos el texto ingresado con el texto que tenemos en la variable de sesión.

Código session_start();

if ($_POST['action'] == "checkdata") {

if ($_SESSION['tmptxt'] == $_POST['tmptxt']) {

echo "Bienvenido";

} else {

echo "Inténtalo nuevamente";

}

exit;

} kaiowazone

Zonaprecios

Clasificación: 2.4 (14 votos)
Está prohibido copiar este artículo. Artículo.org no permite la sindicación de sus artículos.
Acerca del autor

http://www.zonaprecios.com

¿Tiene comentarios o preguntas para el autor?
Artículos recomendados
Tipos de Topologías de Red: Red en Bus
Escrito por Juan Camilo Cano, Añadido: 13 de Sep, 2010
En este tipo de topología de red, todos los nodos de una red están conectados a un medio de transporte común que tiene dos puntos finales. Todos los datos que viajan a través de la red se transmite a través de un medio de transmisión comunmente conocido como Bus o columna vertebral de la red. Cuando el medio...
veces visto 5081 Veces vista:   comentarios 0 Comentarios
Precauciones
Escrito por Manuel Velasco Carretero, Añadido: 20 de Jun, 2010
La primogénita y elemental contabilidad que mecanicé allá por el año 1983 la realicé en un primitivo ordenador mastodonte, donde había que meter grandes discos cada ciento y pico de apuntes y siempre con el alma en vilo por si se te iba la información (con qué cara le decía al jefe que había perdido todo...
veces visto 2106 Veces vista:   comentarios 0 Comentarios
Televisores LED de Toshiba
Escrito por mediablogs.net, Añadido: 26 de Nov, 2010
El monitor es cada día tomado más en cuenta por las compañías fabricantes, por lo que han decidido darles un gran valor agregado a todas ellas, presentando agregados muy innovadores, capaces de convertirlos en verdaderas piezas de valor, las mismas que van a complementarse debidamente con el sistema que los...
veces visto 1813 Veces vista:   comentarios 0 Comentarios
Las 10 Tendencias del Mundo Digital en el 2011
Escrito por Mark_Kol, Añadido: 15 de Feb, 2011
Recientemente, la firma comScore (firma líder en estadisticas y medición del mundo digital) dio a conocer las 10 tendencias digitales que se mantendrán durante los próximos meses; el crecimiento de las redes sociales, el correo electrónico utilizado desde otras plataformas y dispositivos y el uso del video a...
veces visto 2818 Veces vista:   comentarios 0 Comentarios
Equipos informáticos y topologias de red para mejorar la productividad
Escrito por Miguelx2, Añadido: 13 de Ago, 2010
En muchas empresas la compra de equipos informáticos se realiza pensando en un equipo multipropósito que en ocasiones ya viene corto de prestaciones cuando son nuevos. Tipos de topologias de red y equipos con Windows XP y 256 MB de RAM son habituales en muchas empresas. Esto, en mi opinión, es un error. Las...
veces visto 3307 Veces vista:   comentarios 1 Comentarios