Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2010, 09:21
kenproxd
 
Fecha de Ingreso: agosto-2009
Mensajes: 349
Antigüedad: 14 años, 9 meses
Puntos: 8
Problema con Recaptcha

Bueno esta es la primera vez que utilizo recaptcha y tengo problemas para integrarlo con mi formulario contactanos, aqui les dejo la forma en la que lo hice:

Código PHP:
Ver original
  1. <?php        
  2. @putenv("TZ=Europe/Paris");
  3.  
  4. $mail_destino='******';
  5.  
  6. require_once('recaptchalib.php');
  7.  
  8. $publickey = "*********************";
  9.  
  10. $privatekey = "**********************j";
  11.  
  12. $error = null;
  13.  
  14. $titulo="Contacto";
  15.  
  16. $msg="";
  17. $email="";
  18. $web="";
  19. $nick_form="";
  20. $mensaje="";
  21.      
  22. if(isset($_POST['nombre'])){
  23.  
  24. $msg="";   
  25. $nombre=$_POST['nombre'];
  26. $email=$_POST['email'];
  27. $nick_form=$_POST['nick'];
  28. $mensaje= $_POST['mensaje'];
  29.  
  30. $re_ip = $_SERVER["REMOTE_ADDR"];
  31. $re_challenge = $_POST["recaptcha_challenge_field"];
  32. $re_response = $_POST["recaptcha_response_field"];  
  33. $re_valid = recaptcha_check_answer($privatekey, $re_ip, $re_challenge, $re_response);
  34.  
  35. if ($re_valid->is_valid) {
  36.  
  37. if($msg == ""){
  38.  $headers  = "MIME-Version: 1.0\r\n";
  39.  $headers .= "From: AuditionTown\n";
  40.  $headers .= "To: ".$mail_destino."\n";
  41.  $headers .= "Reply-To: ".$email_form."\n";
  42.  $headers .= "Return-Path: ".$email_form."\n";
  43.  $headers .= "X-Priority: 1\n";
  44.  $headers .= "X-Mailer:PHP ".phpversion()."\n";
  45.  $headers .= "Content-type: text/html; charset=ISO-8859-1 \r\n";
  46.  $contenido.="<b>CONTENIDO BLABLA \r\n";
  47.  
  48.  if(mail($mail_destino, $titulo, $contenido, $headers, $re_valid->is_valid))
  49.  {
  50.  header("location:".$_SERVER['PHP_SELF']."?ok=ok");
  51.  
  52.  }
  53.  else
  54.  $msg.="Ocurrio un error al enviar el mensaje<br><br>";
  55.  }
  56.  
  57. }
  58. if(isset($_GET['ok'])) $msg="Tu mensaje fué enviado";
  59.    } else {
  60.       $error = $resp->error;
  61.    }
  62. ?>
  63.  
  64. <form action="<?php echo $_SERVER['PHP_SELF']?>" method='post' onSubmit="return valida(this);">
  65. <table cellpadding="5" cellspacing="0" border="0">
  66. <tr>
  67. <td colspan>CAMPOS</td>
  68. </tr>
  69. <tr>
  70. <td colspan><?php echo recaptcha_get_html($publickey, $error); ?></td>
  71. </tr>
  72. <tr>
  73. <td colspan="2"><input type='submit' value='Enviar' class='boton'/></td>
  74. </tr>
  75. </table>
  76. </form>

Al enviar el formulario, el cual comprueba si los campos estan vacios mediante js, no toma en cuenta el repcatcha.

Espero su pronta ayuda.

Última edición por kenproxd; 15/10/2010 a las 09:26