Utilización de ReCaptcha con Smarty

Jueves, Noviembre 19, 2009 15:00

Antes que nada una introducción breve:

  • Smarty es un motor de plantillas, sirve como intermediario entre el lenguaje de programación (en éste caso PHP, y el codigo de maquetado xhtml/css).
  • ReCaptcha es un sistema publico de captcha muy conocido que ofrece un api para que los programadores podamos utilizarlo en nuestros proyectos. ( Cabe aclarar que ReCaptcha recientemente ha sido adquirido por Google).

Para utilizar ReCaptcha primero debemos registrarnos gratuitamente en ReCaptcha.net , descargar la librería y obtener un par de llaves (publickey y privatekey) para el dominio en que se utilizará.

La implementación en PHP es sumamente sencilla, sería algo como lo siguiente:

// incluimos la librería
require_once(’recaptchalib.php’);

// llenamos ésta variable con la llave pública de recaptcha.
$publickey = “…”;

// mostramos la imágen
echo recaptcha_get_html($publickey);

Y para el chequeo de validación:

// acá vá la llave privada
$privatekey = “…”;

$resp = recaptcha_check_answer ($privatekey,

$_SERVER["REMOTE_ADDR"],

$_POST["recaptcha_challenge_field"],

$_POST["recaptcha_response_field"]);

if (!$resp->is_valid) {

die (”The reCAPTCHA wasn’t entered correctly. Go back and try it again.” .

“(reCAPTCHA said: ” . $resp->error . “)”);

}

Pero qué ocurre cuando utilizamos reCaptcha con Smarty?

El proceso no varía mucho, simplemente hay que asignar la salida a una variable de smarty como se hace normalmente con cualquier aplicación:

// Mostramos el captcha
$smarty->assign(”recaptcha”, recaptcha_get_html($publickey));

// Mostramos el mensaje de error
if (!$resp->is_valid) {

$smarty->assign(”msgError”,”Captcha incorrecto, intentalo nuevamente”);

}

Finalmente faltaría incluir las respectivas variables en la plantilla .TPL {$recaptcha} y {$msgError)
Y listo! ya tenemos nuestro captcha implementado sobre smarty :)

Compartir éste tema:

  • Digg
  • del.icio.us
  • Facebook
  • Google
  • BarraPunto
  • Bitacoras.com
  • E-mail this story to a friend!
  • LinkedIn
  • Live
  • Print this article!
  • MySpace
  • Reddit
  • StumbleUpon
  • Technorati

Related posts:

  1. Recaptcha y Wordpress WP-reCaptcha es un plugin para Wordpress que permite fácilmente...
  2. Google analytics con Smarty Hago un comentario rápido por si alguien busca información...
  3. lista de los post que me interesan Como bien dice el título, son posts/entradas de mi...
  4. recursos extremadamente interesantes Recursos extremadamente interesantes (un título un poco exagerado heh!),...





Puedes dejar una respuesta, o trackback desde tu sitio.

Una respuesta to “Utilización de ReCaptcha con Smarty”

  1. Recaptcha y Wordpress ha dicho:

    Septiembre 2nd, 2010 at 17:33

    [...] Personalmente no lo probé ni sabía de su existencia ya que las integraciones siempre las hice manualmente, sin embargo tiene buena aceptación de quienes lo han implementado y funciona [...]

Responder: