2012-10-11 12 views

Respuesta

41

Para utilizar plugin Joomla Reconocer texto predeterminado sigue estos

1) Obtener claves ReCaptcha pasos- de http://www.google.com/recaptcha

2) Establecer las claves para reCAPTCHA complemento y actívelo si no es así.

3) Poner debajo de código en el que desea mostrar Reconocer texto

//php code 
JPluginHelper::importPlugin('captcha'); 
$dispatcher = JDispatcher::getInstance(); 
$dispatcher->trigger('onInit','dynamic_recaptcha_1'); 

//html code inside form tag 
<div id="dynamic_recaptcha_1"></div> 

4) Poner este código en el que la validación/procesamiento del formulario

$post = JRequest::get('post');  
JPluginHelper::importPlugin('captcha'); 
$dispatcher = JDispatcher::getInstance(); 
$res = $dispatcher->trigger('onCheckAnswer',$post['recaptcha_response_field']); 
if(!$res[0]){ 
    die('Invalid Captcha'); 
} 

// Para Joomla 3.x

$post = JFactory::getApplication()->input->post; 
$dispatcher = JEventDispatcher::getInstance(); 
+1

Sí, está funcionando, muchas gracias – Toretto

+0

@Tornado: Es bueno saber :) – Irfan

+0

No entiendo dónde poner el código en el paso 4. Si estoy usando formmail.php, ¿ese sería el lugar para ponerlo? Estoy confundido porque las instrucciones de Google dicen poner esto en un archivo que proporcionan llamado verify.php. –

0

Tienes esto desde: http://jw-extension.net/joomla-how-to/138-an-easy-way-insert-captcha-in-any-module-or-component-of-joomla.html

  1. Descárgalo

  2. entrada a http://www.google.com/recaptcha para obtener reCAPTCHA clave pública y reCAPTCHA clave privada

  3. Instalar, activar y ingrese la clave pública y privada

  4. En inserto HTMLmodule {captcha} donde se necesita mostrar código de imagen

  5. En general Por favor, inserte

    global $mainframe; 
    $mainframe->triggerEvent('onCaptchaDisplay'); 
    

para mostrar código de imagen.

  1. Si-Auto verificar con la opción de reCAPTCHA está activado, el plugin se comprobará si los datos de verificación de código de imagen existe, entonces se conecte automáticamente a reCAPTCHA y pedir confirmación. Este método requiere un poco más de recursos del sistema en cada carga de página, pero realmente útil si tiene muchas páginas necesita verificación de captcha. Si no desea habilitar la verificación de captcha de forma global, pero solo para unas pocas páginas, es posible que desee deshabilitar la verificación automática con la opción reCAPTCHA. Para verificar la respuesta del usuario, inserte el siguiente código PHP en el archivo controlador de Joomla individual. la extensión en que la verificación código de imagen necesaria:

    global $mainframe; 
    $mainframe->triggerEvent('onCaptchaConfirm'); 
    
+0

gracias por su respuesta, pero no quiero usar ningún complemento externo. – Toretto

+0

Primer enlace obsoleto (ahora: http://web.archive.org/web/20120919102733/http://jw-extension.net/joomla-how-to/138-an-easy-way-insert-captcha-in -any-module-or-component-of-joomla.html) – MattAllegro

1

Siguiendo el código de Irfan, adicionalmente tuve que hacer lo siguiente para que el captcha apareciera:

Agregue lo siguiente al código de la plantilla.

JHtml::_('behavior.keepalive'); 

Aparentemente incluye la biblioteca mootools.

Parece que se agrega un evento domready, pero el evento solo se activa cuando se usa la biblioteca mootools. Así que solo revisa tu fuente html y mira si se está usando mootools. Puede que esté completamente equivocado, pero espero que mi solución ayude a alguien.

Cuestiones relacionadas