query($sql_columns); $columnas = []; while ($row = $result_columns->fetch_assoc()) { $col = $row['Field']; if (!in_array($col, ['ID_Gasto', 'Periodo_Desde', 'Periodo_Hasta'])) { $columnas[] = $col; } } // Obtener el registro actual (donde Periodo_Hasta IS NULL) $sql_actual = "SELECT * FROM gastos WHERE Periodo_Hasta IS NULL ORDER BY Periodo_Desde DESC LIMIT 1"; $result_actual = $conexion->query($sql_actual); $gasto_actual = null; if ($result_actual && $result_actual->num_rows > 0) { $gasto_actual = $result_actual->fetch_assoc(); } echo json_encode([ 'success' => true, 'columnas' => $columnas, 'gasto' => $gasto_actual, 'message' => $gasto_actual ? 'Datos cargados' : 'No hay gastos registrados' ]); } catch (Exception $e) { echo json_encode([ 'success' => false, 'message' => $e->getMessage() ]); } ?>