Comunidad PHPeros

Lenguajes => PHP => Tutoriales PHP => Mensaje iniciado por: phpmysql en 06 de Abril de 2007, 20:47:05 pm

Título: Sencillo Captcha
Publicado por: phpmysql en 06 de Abril de 2007, 20:47:05 pm
Hola, hace tiempo necesitaba un captcha o conocido como anti spam, me cree uno, aquí se los dejo.

Con  un par de funciones ya lo tenemos

Captcha.php
Código: [Seleccionar]
<?php
session_start
(); # iniciamos la sesion
$numero rand(1000,9999); # generamos un numero
$_SESSION[&#39;codigo&#39;] = $numero; # guardamos el numero en la sesion 
# senalamos que el documento va ser una imagen
header("Content-type: image/png");
# declaramos im con la creacion de una imagen
$im imagecreate(8025);
# indicamos el color del fondo (RGB)
$fondo imagecolorallocate($im000); # el color del fondo seria blanco, se puede editar
# indicamos el color del texto (RGB)
$texto imagecolorallocate($im255255255); # el color de las letras seria blanco, se puede editar
# creacion del texton dentro de la imagen
imagestring($im12205$_SESSION[&#39;codigo&#39;], $texto);
# se crea la imagen, la imagen sera PNG
imagepng($im);
?>

¿Cómo usarlo?

Formulario.php
Código: [Seleccionar]
<?php
if($_POST[&#39;enviar&#39;]){ 
session_start(); # iniciamos la sesion
if($captcha == $_SESSION[&#39;codigo&#39;]) # comprobamos que el campo captcha, sea igual que el codigo generado
{
echo(
"Codigo ingresado: correcto"); # Si todo sale bien
}else{
echo(
"Codigo ingresado: incorrecto"); # Si el codigo introducido en incorrecto
} }
?>

<img src="Captcha.php"><br>
<form name="form1" method="post" action="">
<input type="text" name="captcha">
<input type="submit" name="enviar">
</form>

Espero que les sirva, saludos
Título: Re: Sencillo Captcha
Publicado por: naveda en 07 de Abril de 2007, 22:56:01 pm
Para los que no lo sepan, es el típico sistema en el que se genera una imagen con unos numeros o letras y debes introducirlos para poder enviar el formulario.

Muy útil :P, yo tambien tuve que crearme uno hace tiempo aunque tuve problema para integrar la imagen al contenido web, no recordaba que se hacia mediante <img src="image.php"> xD
Título: Re: Sencillo Captcha
Publicado por: phpmysql en 08 de Abril de 2007, 15:02:26 pm
jajajaj, a mi lo que me salia era cómo validar el número dado con el formulario :P después de varios intentos me salió  xD
Título: Re: Sencillo Captcha
Publicado por: Krosty en 09 de Junio de 2007, 05:12:40 am
lee veo asi como un pequeño error, a simpel vista, no esta declarada la variable $captcha
Título: Re: Sencillo Captcha
Publicado por: naveda en 09 de Junio de 2007, 14:53:33 pm
Si lo está pero realmente debería ser $_POST['captcha']....
Título: Re: Sencillo Captcha
Publicado por: G2K en 10 de Junio de 2007, 08:15:57 am
Para los que no lo sepan, es el típico sistema en el que se genera una imagen con unos numeros o letras y debes introducirlos para poder enviar el formulario.

Muy útil :P, yo tambien tuve que crearme uno hace tiempo aunque tuve problema para integrar la imagen al contenido web, no recordaba que se hacia mediante <img src="image.php"> xD
xD haveces lo más simple no se recuerda :P

Saludos crack, gracias por tu aportación...KARMA+