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<?php
$mail_destino='******';
require_once('recaptchalib.php');
$publickey = "*********************";
$privatekey = "**********************j";
$error = null;
$titulo="Contacto";
$msg="";
$email="";
$web="";
$nick_form="";
$mensaje="";
if(isset($_POST['nombre'])){
$msg="";
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$nick_form=$_POST['nick'];
$mensaje= $_POST['mensaje'];
$re_ip = $_SERVER["REMOTE_ADDR"];
$re_challenge = $_POST["recaptcha_challenge_field"];
$re_response = $_POST["recaptcha_response_field"];
$re_valid = recaptcha_check_answer($privatekey, $re_ip, $re_challenge, $re_response);
if ($re_valid->is_valid) {
if($msg == ""){
$headers = "MIME-Version: 1.0\r\n";
$headers .= "From: AuditionTown\n";
$headers .= "To: ".$mail_destino."\n";
$headers .= "Reply-To: ".$email_form."\n";
$headers .= "Return-Path: ".$email_form."\n";
$headers .= "X-Priority: 1\n";
$headers .= "Content-type: text/html; charset=ISO-8859-1 \r\n";
$contenido.="<b>CONTENIDO BLABLA \r\n";
if(mail($mail_destino, $titulo, $contenido, $headers, $re_valid->is_valid)) {
header("location:".$_SERVER['PHP_SELF']."?ok=ok");
}
else
$msg.="Ocurrio un error al enviar el mensaje<br><br>";
}
}
if(isset($_GET['ok'])) $msg="Tu mensaje fué enviado"; } else {
$error = $resp->error;
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']?>" method='post' onSubmit="return valida(this);">
<table cellpadding="5" cellspacing="0" border="0">
<tr>
<td colspan>CAMPOS</td>
</tr>
<tr>
<td colspan><?php echo recaptcha_get_html($publickey, $error); ?></td>
</tr>
<tr>
<td colspan="2"><input type='submit' value='Enviar' class='boton'/></td>
</tr>
</table>
</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.