File "consul.php"

Full Path: C:/wamp64/www/porteria/visitantes/consul.php
File size: 2.17 KB
MIME-type: text/x-php
Charset: utf-8

<?php
include_once '../connection.php';

// Obtener la conexión usando tu función
$connection = connection();

// Establecer zona horaria para Colombia
date_default_timezone_set('America/Bogota');

// Verificar si se recibió un ID y la acción es "salida"
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['id'], $_POST['accion']) && $_POST['accion'] === 'salida') {
    $id = $_POST['id'];
    
    // Actualiza el campo 'salida' con la hora actual
    $consulta = "UPDATE colaboradores SET salida = NOW() WHERE id = ?";
    
    // Preparar la consulta
    $stmt = $connection->prepare($consulta);
    
    if ($stmt) {
        // Vincular el parámetro
        $stmt->bind_param('i', $id);
        
        // Ejecutar la consulta
        if ($stmt->execute()) {
            // Verificar si se actualizó algún registro
            if ($stmt->affected_rows > 0) {
                // Devolver respuesta exitosa con la hora actual
                echo json_encode([
                    'success' => true,
                    'message' => 'Salida registrada correctamente',
                    'hora' => date('H:i:s')
                ]);
            } else {
                // No se encontró el registro o ya tenía salida
                echo json_encode([
                    'success' => false,
                    'message' => 'No se encontró el registro o ya tiene salida registrada'
                ]);
            }
        } else {
            // Error al ejecutar
            echo json_encode([
                'success' => false,
                'message' => 'Error al ejecutar la consulta: ' . $stmt->error
            ]);
        }
        
        // Cerrar la consulta
        $stmt->close();
    } else {
        // Error en la preparación
        echo json_encode([
            'success' => false,
            'message' => 'Error en la preparación de la consulta: ' . $connection->error
        ]);
    }
    
    // Cerrar la conexión
    $connection->close();
} else {
    // Solicitud inválida
    echo json_encode([
        'success' => false,
        'message' => 'Solicitud inválida. Faltan parámetros.'
    ]);
}
?>