prepare(" SELECT clave, valor, descripcion FROM configuracion WHERE clave = :clave LIMIT 1 "); $stmt->execute([':clave' => $clave]); $config = $stmt->fetch(); // Si no se encontró el parámetro if (!$config) { http_response_code(404); echo json_encode([ 'success' => false, 'message' => 'Parámetro no encontrado', 'data' => null ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); exit(); } // Parámetro encontrado echo json_encode([ 'success' => true, 'message' => 'Parámetro obtenido correctamente', 'data' => $config ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); } else { // Obtener TODOS los parámetros ordenados alfabéticamente $stmt = $pdo->query(" SELECT clave, valor, descripcion FROM configuracion ORDER BY clave ASC "); $configuracion = $stmt->fetchAll(); echo json_encode([ 'success' => true, 'message' => 'Configuración del sistema obtenida correctamente', 'data' => $configuracion, 'total' => count($configuracion) ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); } break; // ========================================== // Método no permitido // ========================================== default: http_response_code(405); echo json_encode([ 'success' => false, 'message' => 'Método no permitido. Use GET.', 'allowed_methods' => ['GET'] ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); break; } } catch (PDOException $e) { http_response_code(500); echo json_encode([ 'success' => false, 'message' => 'Error en la base de datos', 'error' => $e->getMessage() ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); } catch (Exception $e) { http_response_code(500); echo json_encode([ 'success' => false, 'message' => 'Error inesperado en el servidor', 'error' => $e->getMessage() ], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); } ?>