<?php // validarUsuario.php session_start(); include("connection.php"); $con = connection(); // Verificar si se enviaron los datos del formulario if ($_SERVER["REQUEST_METHOD"] == "POST") { // --- Validación de reCAPTCHA --- if (!isset($_POST['g-recaptcha-response']) || empty($_POST['g-recaptcha-response'])) { echo "<script>alert('Por favor completa el captcha.'); window.location.href='login.php';</script>"; exit(); } $recaptcha_response = $_POST['g-recaptcha-response']; $secret_key = '6LcUafsrAAAAAL2xMNSvimYvzrMlC3YFSgUJGQPx'; $url = 'https://www.google.com/recaptcha/api/siteverify'; $data = array( 'secret' => $secret_key, 'response' => $recaptcha_response, 'remoteip' => $_SERVER['REMOTE_ADDR'] ); // Usar file_get_contents con contexto HTTP $options = array( 'http' => array( 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'content' => http_build_query($data) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); if ($result === FALSE) { // Error al conectar con el servicio de reCAPTCHA echo "<script>alert('Error al validar el captcha. Intenta de nuevo.'); window.location.href='login.php';</script>"; exit(); } $result_json = json_decode($result, true); if (!$result_json['success']) { // Captcha inválido echo "<script>alert('La verificación de seguridad falló. Por intenta de nuevo.'); window.location.href='login.php';</script>"; exit(); } // --- Fin validación reCAPTCHA --- // Obtener y sanitizar los datos del formulario $nombre = mysqli_real_escape_string($con, $_POST['nombre']); $contrasena = mysqli_real_escape_string($con, $_POST['contrasena']); // Consultar la base de datos para verificar las credenciales $sql = "SELECT * FROM Usuarios WHERE nombre = '$nombre'"; $query = mysqli_query($con, $sql); if (mysqli_num_rows($query) > 0) { $usuario = mysqli_fetch_array($query); // Verificar la contraseña if ($contrasena == $usuario['contrasena']) { // Credenciales correctas, crear sesión $_SESSION['id'] = $usuario['id']; $_SESSION['nombre'] = $usuario['nombre']; $_SESSION['loggedin'] = true; // Redirigir a index.php header("Location: index.php"); exit(); } else { // Contraseña incorrecta echo "<script>alert('Contraseña incorrecta'); window.location.href='login.php';</script>"; } } else { // Usuario no encontrado echo "<script>alert('Usuario no encontrado'); window.location.href='login.php';</script>"; } } else { // Si alguien intenta acceder directamente a este archivo header("Location: login.php"); exit(); } ?>