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){
$email_to = "mi correo";
$email_subject = "Contacto desde la web ";
// Aquí validamos los datos ingresados por el usuario
include ($_SERVER['DOCUMENT_ROOT']) . '/includes/header.php';
include ($_SERVER['DOCUMENT_ROOT']) . '/includes/enviofallido.php';
include ($_SERVER['DOCUMENT_ROOT']) . '/includes/footer.php';
}
$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();
include ($_SERVER['DOCUMENT_ROOT']).'/includes/header.php';
include ($_SERVER['DOCUMENT_ROOT']).'/includes/enviocorrecto.php';
include ($_SERVER['DOCUMENT_ROOT']).'/includes/footer.php';
}
}
else{
}
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?
 
 


