Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/02/2011, 10:52
charlescuella
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 3 meses
Puntos: 8
agregar recaptcha a formulario comentarios

hola amigos debido a un ataque de spam en mi sitio me toca implementar el recaptcha para evitar este problema, he entrado en su faq pero aun no entiendo muy bien que digamos.

lo que he hecho:
ya tengo las key public y key private, ya descargue el archivo para hacer el incluide, lo monte a la raiz de mi host, ahora estoy en el php de mi pagina y hago el incluide y en el form pongo esto:

Código PHP:
 <?
require_once('recaptchalib.php');
//Llaves de la captcha
$captcha_publickey "6Lf8----------------xs";
$captcha_privatekey "6Lf8---------Y0Pj";
//por ahora ponemos a null el error de la captcha
$error_captcha=null;

if (
$_POST){
   
$captcha_respuesta recaptcha_check_answer ($captcha_privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
   if (
$captcha_respuesta->is_valid) {
      
//todo correcto
      //hacemos lo que se deba hacer una vez recibido el formulario válido
      
echo "Todo correcto!";
   }else{
      
//El código de validación de la imagen está mal escrito.
      
echo "Has escrito mal el texto";
      
$error_captcha $captcha_respuesta->error;
   }
}

?>

<form action="<?php echo $editFormAction?>" id="form_comentario" name="form_comentario" method="POST">
                    
<div id="anuncios_afiliado"><?
//escribimos en la página lo que nos devuelve recaptcha_get_html()
echo recaptcha_get_html($captcha_publickey$error_captcha);
?>
                      <ul>
                        <li id="fo1li11">
                          <label for="Field11">
                            
                            Nombre</label>
                          <input name="co_id_afiliado" type="hidden" id="co_id_afiliado" value="<?php echo $row_anuncios_afiliado['id_afiliado']; ?>" />
                          <input name="co_id_anuncio" type="hidden" id="co_id_anuncio" value="<?php echo $row_anuncios_afiliado['id_anuncio']; ?>" />
                          <input name="co_estado" type="hidden" id="co_estado" value="sin respuesta" />
                        </li>
                        <li id="fo1li4">
                          <label id="title4" for="co_email"> </label>
                          <label for="co_nombre"></label>
                          <span id="sprytextfield2">
                          <input type="text" name="co_nombre" id="co_nombre" />
                          <span class="textfieldRequiredMsg">Se necesita un valor.</span></span>
                          <label for="co_email"><br />
                            E-mail*<span id="req_4">*</span></label>
                        </li>
                        <li>
                          <label for="co-email2"></label>
                          <span id="sprytextfield1">
                          <input type="text" name="co_email" id="co-email2" />
                          <span class="textfieldRequiredMsg">Se necesita un valor.</span><span class="textfieldInvalidFormatMsg">Formato no válido.</span></span>
                          <p class="form-detalle"> Debe de ser real el Email, te enviaremos un aviso cuanto te respondan</p>
                        </li>
                        <li> </li>
                        <li id="fo1li14"></li>
                        <li id="fo1li15"> </li>
                        <li id="fo1li16">
                          <label id="title16" for="Field16">Mensaje*<span id="req_16">*</span></label>
                        </li>
                        <li>
                          <label for="co_comentario"></label>
                          <span id="sprytextarea1">
                          <textarea name="co_comentario" id="co_comentario" cols="25" rows="5"></textarea>
                          <span class="textareaRequiredMsg">Se necesita un valor.</span></span></li>
                        <li> </li>
                        <li>
                          <div>
                            <input id="form-anuncios_afiliado" name="form-anuncios_afiliado" type="submit" value="Dejar Pregunta" />
                          </div>
                        </li>
                        <li> </li>
                      </ul>
                </div>
                    <input type="hidden" name="MM_insert" value="form_comentario" />
                  </form>

como ven el insert lo hago en esa pagina ya me aparece en pantalla el recaptcha pero no pasa nada si es errado o bien el codigo ps aun hace el insert.

espero me puedan ayudar con ese detalle
estare atento a cualquier comentario de ustedes muchas gracias
__________________
sitios
www.avisoya.com
www.yavendi.com