Re: Codigo de Captcha en PHP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hay muchos y muy variados en Internet. En alguna ocasión he usado el que 
viene en sBlog. Es muy sencillo de implementar y para la mayoría de los 
casos suficiente para evitarnos problemas de spam.

En código es:

<?php

 $key = (array_key_exists('k', $_GET) && strlen($_GET['k']) == 4) ? 
$_GET['k'] : strtolower(substr(md5(rand()), 0, 4));

 $im = imagecreatetruecolor(40, 20);

 $bg = imagecolorallocate($im, 0, 0, 0);
 $col_text = imagecolorallocate($im, 255, 255, 255);

 imagestring($im, 4, 4, 1, $key, $col_text);

 header('Content-type: image/png');
 imagepng($im);
 imagedestroy($im);

?>

Luego llamas a este archivo desde el que lo necesites.

Te generas el código (en este caso de 4 numeros y letras):

<?php   $k = strtolower(substr(md5(mt_rand()), 0, 4)); ?>

En el formulario donde lo uses poner un campo oculto como éste:

<input type="hidden" name="h" id="h" value="<?php echo $k; ?>" />

Y llamas a la imagen como:

<img src="as_img.php?k=<?php echo $k; ?>"  />

Por último, una vez se a enviado el formulario, compruebas que el valor del 
campo oculto "h" es igual que el escrito por el usuario en el formulario.

Para más seguridad se podrían haber usado variables de sesión para guardar y 
pasar los valores de "h", pero eso ya te lo dejo a ti.

Saludos,

Julio Barroso

""Ricardo Ríos"" <ricardo.rios.sv@xxxxxxxxx> escribió en el mensaje 
news:2a2fc610607220828v73964a52vaa031b54e94f3e23@xxxxxxxxxxxxxxxxx
| Hola amigos listeros alguien conoce algun codigo libre de un captcha en 
php
| , gracias por sus comentarios.
| 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux