Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/10/2012, 13:14
Avatar de patilanz
patilanz
 
Fecha de Ingreso: enero-2012
Mensajes: 880
Antigüedad: 12 años, 4 meses
Puntos: 29
Respuesta: Error al crear una captcha

Cita:
Iniciado por abimaelrc Ver Mensaje
Las comillas dobles que estás mostrando en el src, no son comillas dobles regulares. Te recomiendo que cambies esas comillas por las que son regulares. Y lo otro sin ver lo que tienes hecho exactamente no se te puede decir, te recomiendo que postees lo que hayas hecho e indiques el error que te da
Hola, ya cambie las comillas pero sigue igual y el codigo que tengo en la captcha es este:

Código PHP:
Ver original
  1. <?php
  2. //Capucha Start{
  3. // Indicamos el tamaño de nuestro captcha, puede ser aleatorio para mayor seguridad
  4. $captchaTextSize = 5;
  5. do {
  6. // Generamos un string aleatorio y lo encriptamos con md5
  7. $md5Hash = md5( microtime( ) * mktime( ) );
  8. // Eliminamos cualquier caracter extraño
  9. preg_replace( '([1aeilou0])', '', $md5Hash );
  10. } while( strlen( $md5Hash ) < $captchaTextSize );
  11. // necesitamos sólo 7 caracteres para este captcha
  12. $key = substr( $md5Hash, 0, $captchaTextSize );
  13. // Guardamos la clave en la variable de sesión. La clave esta encriptada.
  14. $_SESSION['key'] = md5( $key );
  15.  
  16.  
  17. // almacenamos la imagen base, el background.
  18. $captchaImage = imagecreatefrompng( 'images/captcha.png' );
  19. /*
  20. Seleccionamos un color de texto. Cómo nuestro fondo es un verde agua, escogeremos un cólor verde para el texto. El color del texto es, preferentemente, el mismo que el del background, aunque un poco más oscuro para poder distnguirlo.
  21. */
  22. $textColor = imagecolorallocate( $captchaImage, 31, 118, 92 );
  23. /*
  24. Seleccionamos un color para las líneas que queremos se dibujen en nuestro captcha. En este caso usaremos una mezcla entre verde y azul
  25. */
  26. $lineColor = imagecolorallocate( $captchaImage, 15, 103, 103 );
  27.    
  28.  
  29. // recuperamos el parametro tamaño de imagen
  30. $imageInfo = getimagesize( 'images/captcha.png' );
  31. // decidimos cuantas líneas queremos dibujar
  32. $linesToDraw = 10;
  33. // Añadimos las líneas de manera aleatoria
  34. for( $i = 0; $i < $linesToDraw; $i++ ) {
  35. // utilizamos la función mt_rand()
  36. $xStart = mt_rand( 0, $imageInfo[ 0 ] );
  37. $xEnd = mt_rand( 0, $imageInfo[ 0 ] );
  38. // Dibujamos la linea en el captcha
  39. imageline( $captchaImage, $xStart, 0, $xEnd, $imageInfo[1], $lineColor );
  40. }
  41.  
  42.  
  43. /*
  44. Escribimos nuestro string aleatoriamente, utilizando una fuente true type. En este caso, estamos utilizando BitStream Vera Sans Bold, pero podemos utilizar cualquier otra.
  45. */
  46. imagettftext( $captchaImage, 20, 0, 35, 35, $textColor, 'fonts/VeraBd.ttf', $key );
  47. /*
  48. Mostramos nuestra imagen. Preparamos las cabeceras de la imagen previniendo que no se almacenen en la cache del navegado
  49. */
  50. header ( 'Content-type: image/png' );
  51. header('Cache-Control: no-cache, must-revalidate');
  52. header('Expires: Fri, 19 Jan 1994 05:00:00 GMT');
  53. header('Pragma: no-cache');
  54. imagepng( $captchaImage ); 
  55.    
  56. //Capucha End}
  57. ?>

En el tambien cambie las comillas pero nada.

Y no me da ningun error simplemente no me muestra la imagen

Saludos