false, 'message' => 'Acceso no autorizado.']); exit; } // Check for POST method if ($_SERVER['REQUEST_METHOD'] !== 'POST') { echo json_encode(['success' => false, 'message' => 'Método no permitido.']); exit; } // Get input data $pedido_id = $_POST['pedido_id'] ?? null; $estado_pago = $_POST['estado_pago'] ?? null; // Validate input if (empty($pedido_id) || empty($estado_pago)) { echo json_encode(['success' => false, 'message' => 'Datos incompletos.']); exit; } $allowed_statuses = ['Pendiente a verificación', 'Verificado']; if (!in_array($estado_pago, $allowed_statuses)) { echo json_encode(['success' => false, 'message' => 'Estado no válido.']); exit; } require_once 'db/config.php'; try { $pdo = db(); $sql = "UPDATE pedidos SET estado_pago = ? WHERE id = ?"; $stmt = $pdo->prepare($sql); $success = $stmt->execute([$estado_pago, $pedido_id]); if ($success) { echo json_encode(['success' => true, 'message' => 'Estado de pago actualizado.']); } else { echo json_encode(['success' => false, 'message' => 'No se pudo actualizar la base de datos.']); } } catch (PDOException $e) { // Log error to a file in a real application // error_log($e->getMessage()); echo json_encode(['success' => false, 'message' => 'Error de base de datos.']); }