Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Zend (http://www.forosdelweb.com/f182/)
-   -   Implemetentar Captcha en Zend Framework (http://www.forosdelweb.com/f182/implemetentar-captcha-zend-framework-616528/)

gabyrsh 19/08/2008 12:53

Implemetentar Captcha en Zend Framework
 
Hola chicos!
Necesito implementar la herramienta de Captcha en mi formulario HTML (no utilizó Zend_Form.) Vi que el Zend 1.6 ya lo va a traer, pero todavia no estan en la version final, Asique opté por hacerlo de otro modo.

Buscando en la web, encontré el siguiente tutorial:
http://blog.ekini.net/2007/10/29/sim...end-framework/

Entonces empezé a probarlo, pero me surgió el siguiente problema.
Primero, intento hacer, que al ir a un controlador de mi sitio, ejemplo:
Código:

localhost/misitio/administracion/generarcaptcha
me devuelva una imagen (en este caso va a ser la imagen del captcha).

El problema, es que, no me devuelve ninguna imagen. En Firefox al ir a mi url, solo me devuelve, la url impresa.
Encambio si uso el Explorer de Windows, lo que puedo observar, es que me devuelve mi Layout, y en el centro (donde va el content) hay todos simbolos raros (Pienso que esa es la imagen, pero no me funciona el Header).

La verdad nose que puede ser, aqui les va el codigo:

Código:

class Administracion_CaptchaController extends Zend_Controller_Action {
        #
        public function init() #
        {
                #
                $this->_helper->viewRenderer->setNoRender(true);
                #
        }
        #
       

        #
        public function generatecaptchaAction() #
        {
                #
               

                #
                //Let’s generate a totally random string using md5
                #
                $md5_hash = md5 ( rand ( 0, 999 ) );
                #
                //We don’t need a 32 character long string so we trim it down to 5
                #
                $security_code = substr ( $md5_hash, 15, 5 );
                #
               
                echo $security_code;
                #
                //$_SESSION [captcha_code] = $security_code;
                #
               

                #
                //Set the image width and height
                #
                $width = 100;
                #
                $height = 20;
                #
               

                #
                //Create the image resource
                #
                $image = ImageCreate ( $width, $height );
                #
               

                #
                //We are making three colors, white, black and gray
                #
                $white = ImageColorAllocate ( $image, 255, 255, 255 );
                #
                $black = ImageColorAllocate ( $image, 0, 0, 0 );
                #
                $grey = ImageColorAllocate ( $image, 204, 204, 204 );
                #
               

                #
                //Make the background black
                #
                ImageFill ( $image, 0, 0, $black );
                #
               

                #
                //Add randomly generated string in white to the image
                #
                ImageString ( $image, 3, 30, 3, $security_code, $white );
                #
               

                #
                //Throw in some lines to make it a little bit harder for any bots to break
                #
                ImageRectangle ( $image, 0, 0, $width - 1, $height - 1, $grey );
                #
                imageline ( $image, 0, $height / 2, $width, $height / 2, $grey );
                #
                imageline ( $image, $width / 2, 0, $width / 2, $height, $grey );
                #
               

                #
                //Tell the browser what kind of file is come in
                #
                header ( "Content-Type: image/jpeg" );
                #
               

                #
                //Output the newly created image in jpeg format
                #
                ImageJpeg ( $image );
                #
        }

}


Alguna idea? Tal vez no sea el mejor modo de utilizar Captcha., si es asi que me recomiendan?

Desde ya, Muchas Gracias,

GatorV 19/08/2008 13:58

Respuesta: Implemetentar Captcha en Zend Framework
 
Hola gabyrsh,

Si te fijas en el manual, ya hay un componente para Captcha:

http://framework.zend.com/manual/en/zend.captcha.html

Saludos.

gabyrsh 19/08/2008 14:06

Respuesta: Implemetentar Captcha en Zend Framework
 
eso lo vi, pero creo que es solo para la version 1.6, y esta todavia no esta en la version Final.

Es asi?

esta testeado? ya que es para un proyecto.

GatorV 19/08/2008 17:00

Respuesta: Implemetentar Captcha en Zend Framework
 
Mmm cierto, en ese caso si tienes que buscar la forma de implementar una libreria como lo estas haciendo, aunque por lo que pones del enlace es para una version anterior del FW.

Saludos.

gabyrsh 19/08/2008 20:21

Respuesta: Implemetentar Captcha en Zend Framework
 
y tienes alguna sugerencia para impletemtar Captcha en Zend?


La zona horaria es GMT -6. Ahora son las 22:26.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.