Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Diabliyo en 11 Febrero 2011, 23:35 pm



Título: Problema en Re-Captcha Google con AJAX
Publicado por: Diabliyo en 11 Febrero 2011, 23:35 pm
Buenas.

Estoy implementando Re-Captcha en mi sitio web turundus.net pero no me sale impreso el cuadro del re-captcha :(... Vaya, cuando un usuario se quiere registrar en el sitio, al clickear en el boton de Registrarse este carga mediante AJAX dentro de la capa un formulario donde estan los campos y al final invoco la llamada al re-captcha, pero no se muestra.

Buscando sobre si tenia error mi codigo, confirme que NO, porque si tengo una hoja PHP (que no cargue AJAX) el recuadro de Re-Captcha si se muestra !...

Aqui tengo el ejemplo: http://turundus.net/test.php <-- si se imprime re-captcha

Pero si entran al sitio www.turundus.net y le dan click en Registrar se carga una pagina con AJAX, pero nada :(...

Buscando si el problema es la CAPA principal... pues meti la llamada del re-captcha dentro de un DIV, el cual le puse el estilo de with:600px;height:400px;border:solid 1px red;, pero aun asi aparece vacio !

Revice el LOG de Apache y no se muestran errores !...

Cual sera el problema ?



Aglo de code...

El boton registrarse se invoca asi:
Código
  1. <?php
  2. echo '<a href="#" onclick="cargar_datos( \'id=registro\', \'contenido_general\', \'GET\', \'0\' );">Registrarse</a>';
  3. ?>

La funcion cargar_datos() invoca ajax... Asi que, se carga el formulario con este contenido:

Código
  1. <?php
  2.       <table id="mi_tabla">
  3.       <th colspan="2">Datos de Registro</th><tr>
  4.       <td>Usuario:</td><td><input class="in_put" type="text" name="registro_usuario" id="registro_usuario"></td><tr>
  5.       <td>Clave:</td><td><input class="in_put" type="password" name="registro_clave" id="registro_clave"></td><span>(minimo 8 caracteres)</span><tr>
  6.       <td>E-Mail:</td><td><input class="in_put" type="text" name="registro_email" id="registro_email"></td><tr>
  7.       <td colspan="2" class="t-right"><input type="image" value="Registrarme" src="'. URL_TEMPLATE. '/design/button-continuar.gif" onclick="cargar_datos( \'id=registro&op=done\', \'contenido_general\', \'POST\', \'registro_usuario:registro_clave:registro_email\');"></td>
  8.       </table>';
  9.  
  10.       echo '<div id="captcha">';
  11.       get_captcha(); # ponemos captcha
  12.       echo '</div>';
  13. ?>

La capa captcha esta declarada asi en els tyle:

Código
  1. #captcha {border:solid 1px red;width:700px;height:250px;}
  2. #captcha iframe {border:solid 1px red;}
  3.  

Y la funcion get_captcha(); invoca:

Código
  1. <?php
  2. function get_captcha()
  3. {
  4. # imprimirmos form y pasamos como argumento la clave publica  
  5. echo recaptcha_get_html( get_recaptcha_publickey(), NULL );
  6. }
  7. ?>
La funcion get_recaptcha_publickey() porpociona la public key guardada en la Base de Datos.

Saludos !


Título: Re: Problema en Re-Captcha Google con AJAX
Publicado por: Diabliyo en 15 Febrero 2011, 21:00 pm
Es problema del script mismo que se incluye, algo hace que no se muestra con AJAX, asi que mejor opte por hacerlo normal...

Saludos !