Foros del Web » Programando para Internet » PHP »

ayuda a hacer un captcha

Estas en el tema de ayuda a hacer un captcha en el foro de PHP en Foros del Web. hola chicos, disculpen keria pedirles ayuda, tengo una tarea de hacer un form en php, ante eso no hay problema se como hacer un form ...
  #1 (permalink)  
Antiguo 27/05/2010, 18:27
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años, 5 meses
Puntos: 36
ayuda a hacer un captcha

hola chicos, disculpen keria pedirles ayuda, tengo una tarea de hacer un form en php, ante eso no hay problema se como hacer un form pero el problema es que quiero ponerle un campo de captcha y no se como hacer me ayudarian porfis.
  #2 (permalink)  
Antiguo 27/05/2010, 18:36
Avatar de dcreate  
Fecha de Ingreso: octubre-2009
Ubicación: Veracruz
Mensajes: 536
Antigüedad: 15 años, 1 mes
Puntos: 22
Respuesta: ayuda a hacer un captcha

deberias de checar en los aportes, mira aki esta este espero te ayude mucho
  #3 (permalink)  
Antiguo 27/05/2010, 18:57
Avatar de ale123  
Fecha de Ingreso: septiembre-2007
Mensajes: 78
Antigüedad: 17 años, 2 meses
Puntos: 3
Respuesta: ayuda a hacer un captcha

Buenas, mira te recomiendo muchisimo el sistema de reCaptcha: http://recaptcha.net

Bueno, si tenes pensado hacerlo vos, te recomiendo que hagas algo mas sencillo como
"Escribe la suma: 2 + 3", por ejemplo, lo cual te ahorraras trabajo y posibles problemas...y obtenes el mismo resultado

Salu2,
Ale
__________________
Diseño y desarrollo web personalizado, precios competitivos: www.admaz.com.ar
  #4 (permalink)  
Antiguo 27/05/2010, 19:21
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años, 5 meses
Puntos: 36
Respuesta: ayuda a hacer un captcha

gracias a los 2, aunk la vdd me gusto mas la opcion de mi amigo dcreate porq lo q kiero es crear el captcha y ale con ese url solo me permite usarlo por internet. Alguien mas q me ayude a facilitar esto. Mil gracias
  #5 (permalink)  
Antiguo 28/05/2010, 16:59
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años, 5 meses
Puntos: 36
Respuesta: ayuda a hacer un captcha

hola, alguien me podria ayudar con un ejemplo mas sencillo es que con el q hay en aportes no se lee entiende, por favor ayudenme
  #6 (permalink)  
Antiguo 28/05/2010, 19:02
Avatar de dcreate  
Fecha de Ingreso: octubre-2009
Ubicación: Veracruz
Mensajes: 536
Antigüedad: 15 años, 1 mes
Puntos: 22
Respuesta: ayuda a hacer un captcha

mira encontre esto haber si te sirve amiga:

captcha.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. //Creamos una cadena aleatoria de caracteres
  4. $md5 = md5(microtime() * mktime());
  5.  
  6. //Reducimos a 5 los caracteres
  7. $string = substr($md5,0,5);
  8.  
  9. ?>
  10. <?php
  11.  
  12. //creamos un fondo de imagen y lo subimos, luego con la funcion imagecreatefrompng, la pasamos al captcha
  13. $captcha = imagecreatefrompng("captcha.png");
  14.  
  15. //podemos configurar los colores para las lineas
  16. $black = imagecolorallocate($captcha, 0, 0, 0);
  17. $line = imagecolorallocate($captcha,233,239,239);
  18.  
  19. //y para evitar las arañas le añadimos las lineas
  20. imageline($captcha,0,0,39,29,$line);
  21. imageline($captcha,40,0,64,29,$line);
  22. ?>
  23. <?php
  24. //insertamos la cadena creada aleatoriamente en la imagen
  25. imagestring($captcha, 5, 20, 10, $string, $black);
  26.  
  27. //como no, encriptamos y almacenamos el valor de la cadena en una variabe sesion
  28. $_SESSION['key'] = md5($string);
  29.  
  30. //devolvemos la imagen para crearla
  31. header("Content-type: image/png");
  32. imagepng($captcha);
  33. ?>

index.php

Código PHP:
Ver original
  1. <?php session_start();?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>Documento sin titulo</title>
  7. </head>
  8.  
  9. <body>
  10. <?php
  11. if(isset($_POST['submit'])){
  12.  
  13.  
  14. /*
  15. Encriptamos la clave pasada por el formulario y luego la comparamos con el valor del captcha (almacenado en la variable de sesi�n)
  16. */
  17.  
  18. if(md5($_POST['code']) != $_SESSION['key']){
  19.  
  20. echo "no!";
  21.  
  22. } else {
  23.  
  24. echo "Bienvenido...";
  25.  
  26. }
  27.  
  28.  
  29. }else{?>
  30. <img src="captcha.php" border="0" />
  31.  
  32. <form name="captcha_form" method="POST" action="index.php">
  33.  
  34. <input type="text" name="code" width="25" />
  35.  
  36. <input type="submit" name="submit" value="submit" />
  37.  
  38. </form>
  39.  
  40. <?php } ?>
  41. </body>
  42. </html>

ha recuerda poner en tu carpeta una imagen, porq tienes q cubrir este codigo

$captcha = imagecreatefrompng("captcha.png");
  #7 (permalink)  
Antiguo 28/05/2010, 19:41
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años, 5 meses
Puntos: 36
Respuesta: ayuda a hacer un captcha

muchas gracias, en verdad eres un amor [url=http://es.iminent.com/emoticonos/?v=true&parentappid=c556297d-4146-438b-9ba1-05be95da7191&componentid=c38d968e-4aa0-4f63-8b54-f08b6e704f5d&contentuid=543f16ac-c881-43b0-96fc-99e5d92e5ef9][img]http://vz.iminent.com/vz/543f16ac-c881-43b0-96fc-99e5d92e5ef9/3/wet.gif[/img][/url]
  #8 (permalink)  
Antiguo 28/05/2010, 20:12
Avatar de SPAWN3000  
Fecha de Ingreso: marzo-2008
Ubicación: Bogota
Mensajes: 858
Antigüedad: 16 años, 8 meses
Puntos: 15
Respuesta: ayuda a hacer un captcha

Hola ylellan, yo se que tu interes es en un captcha, y no tengo clara la finalidad. pero me baso en el uso cumun... esto solo es una sugerencia, tal vez no para tu caso, pero si para alguien mas que se pueda topar con este post.

Yo suelo utilizar un campo oculto en el formulario, y simplemente cuando se envia, valido que este campo no tenga nada. Por que?

Debido a que es invisible un usuario no podria ingresarlo, pero un robot SI.

Código:
<html>
<head>
	<style>
	#micampo { visibility:hidden }
	</style>
</head>
<body>
<form>
<input id="micampo" type="text" name="email" value=""/>
</form>
</body>
</html>
NOTA: Claro, esto no compite contra un captcha(Y no lo recomiendo si es un sistema para un banco, una empresa financiera, o compras por internet)... pero hay que tener en cuenta que un captcha es algo engorroso y molesto para algunos usuarios, o no?? Y todo para evitar la saturacion de peticiones a nuestro servidor?? Tambien es bueno configurar el archivo de robot's(Claro google no respeta una gran parte)... pero algo es algo!! y si se esta en APACHE un buen .htaccess no vendria mal, ofuscar archivos y mod_rewrite.

Un saludo,
  #9 (permalink)  
Antiguo 28/05/2010, 20:25
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 14 años, 5 meses
Puntos: 36
Respuesta: ayuda a hacer un captcha

lo tomare muy en cuenta SPAWN3000, quiero el captcha para un tarea q me pidieron pero tu idea para seguridad es muy buena
  #10 (permalink)  
Antiguo 29/05/2010, 08:15
Avatar de kmzero  
Fecha de Ingreso: octubre-2008
Mensajes: 43
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: ayuda a hacer un captcha

Cita:
Iniciado por SPAWN3000 Ver Mensaje
Hola ylellan, yo se que tu interes es en un captcha, y no tengo clara la finalidad. pero me baso en el uso cumun... esto solo es una sugerencia, tal vez no para tu caso, pero si para alguien mas que se pueda topar con este post.

Yo suelo utilizar un campo oculto en el formulario, y simplemente cuando se envia, valido que este campo no tenga nada. Por que?

Debido a que es invisible un usuario no podria ingresarlo, pero un robot SI.

Código:
<html>
<head>
	<style>
	#micampo { visibility:hidden }
	</style>
</head>
<body>
<form>
<input id="micampo" type="text" name="email" value=""/>
</form>
</body>
</html>
NOTA: Claro, esto no compite contra un captcha(Y no lo recomiendo si es un sistema para un banco, una empresa financiera, o compras por internet)... pero hay que tener en cuenta que un captcha es algo engorroso y molesto para algunos usuarios, o no?? Y todo para evitar la saturacion de peticiones a nuestro servidor?? Tambien es bueno configurar el archivo de robot's(Claro google no respeta una gran parte)... pero algo es algo!! y si se esta en APACHE un buen .htaccess no vendria mal, ofuscar archivos y mod_rewrite.

Un saludo,
Buenísima idea! lo pruebo ya mismo en mi form...Justamente, no quiero que la gente que se registre se canse de tantos pedidos (yo misma me canso!)
Saludos!

Etiquetas: captcha
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:39.