-
Notifications
You must be signed in to change notification settings - Fork 0
/
process-form.php
46 lines (36 loc) · 1.47 KB
/
process-form.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
// Verificar si se ha enviado el formulario
if (isset($_POST['nombre']) && isset($_POST['apellido']) && isset($_POST['telefono']) && isset($_POST['email']) && isset($_POST['consulta']) && isset($_POST['g-recaptcha-response'])) {
// Recibir los datos del formulario
$nombre = $_POST['nombre'];
$apellido = $_POST['apellido'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$consulta = $_POST['consulta'];
$captcha = $_POST['g-recaptcha-response'];
// Validar el captcha
$secret = "YOURSERVERKEY";
$remoteip = $_SERVER['REMOTE_ADDR'];
$url = "https://www.google.com/recaptcha/api/siteverify?secret=$secret&response=$captcha&remoteip=$remoteip";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$verify = json_decode($response);
if ($verify->success) {
// Si el captcha es válido, procesar el formulario
// Crear el mensaje del correo electrónico
$mensaje = "Nombre: $nombre\nApellido: $apellido\nTeléfono: $telefono\nCorreo electrónico: $email\nConsulta: $consulta\n";
// Establecer cabeceras del correo electrónico
$headers = 'From: SITEMAIL' . "\r\n" .
'Reply-To: SITEMAIL' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
// Enviar el correo electrónico
mail('MAILTO', 'Consulta desde el formulario de contacto', $mensaje, $headers);
}
else {
echo "falla";
}
}
?>