Intentando integrar este recaptcha en mi formulario y pagina de validación, no he tenido narices a que me funcione. He mirado por todo la red, y por aqui por los foros, pero no habido manera de que quiera funcionar.
En la parte del formulario tenemos la llamada al script de google y el div propio del dialogo de captcha dentro del form.
Y en la pagina de validación está implementado la validación por el metodo POST con el siguiente codigo:
Código PHP:
Ver original<?php
$ip = $_SERVER['REMOTE_ADDR'];
$secretkey = "Mi clave secreta";
$captcha=$_POST[‘g-recaptcha-response’];
$response = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secretkey.'&response='.$captcha.'&remoteip='.$ip);
echo"<br/><br/>";
echo"<br/><br/>";
echo"<br/><br/>";
if($responsekeys[“success”] === true){
if (isset($_POST['contactar'])) { $email_to = "mi correo";
$email_subject = "Contacto desde la web ";
// Aquí validamos los datos ingresados por el usuario
if ((!isset($_POST['userName'])) || (!isset($_POST['userEmail'])) || (!isset($_POST['Mensaje']))) { include ($_SERVER['DOCUMENT_ROOT']) . '/includes/header.php';
include ($_SERVER['DOCUMENT_ROOT']) . '/includes/enviofallido.php';
include ($_SERVER['DOCUMENT_ROOT']) . '/includes/footer.php';
die("No ha rellenado todos los campos del formulario"); }
$email_message = "Detalles del formulario de contacto:\n\n";
$email_message .= "Nombre: " . $username . "\n";
$email_message .= "E-mail: " . $useremail . "\n";
$email_message .= "Mensaje: " . $mensaje . "\n\n";
// Ahora se envía el e-mail usando la función mail() de PHP
$headers = 'From: '.$email_to."\r\n".'Reply-To: '.$useremail."\r\n" .'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); include ($_SERVER['DOCUMENT_ROOT']).'/includes/header.php';
include ($_SERVER['DOCUMENT_ROOT']).'/includes/enviocorrecto.php';
include ($_SERVER['DOCUMENT_ROOT']).'/includes/footer.php';
}
}
else{
die ("Ha habido un error con la verificación captcha introducida"); }
Este mismo codigo funciona en otros sitios, pero yo no consigo que me funcione. los dominios en google estan configurados y las claves estan correctamente introducidas.
El error es que siempre me devuelve false la función file_get_contents.
Alguien tiene alguna pista?