connect_error) { echo json_encode(['success' => false, 'error' => 'Error de conexión']); exit; } if ($id <= 0) { echo json_encode(['success' => false, 'error' => 'ID no proporcionado']); exit; } $conexion->begin_transaction(); try { $stmt = $conexion->prepare("DELETE FROM ordenes_productos WHERE ID_Orden IN (SELECT ID_Orden FROM ordenes_compra WHERE ID_Proveedor = ?)"); $stmt->bind_param("i", $id); $stmt->execute(); $stmt->close(); $stmt = $conexion->prepare("DELETE FROM ordenes_compra WHERE ID_Proveedor = ?"); $stmt->bind_param("i", $id); $stmt->execute(); $stmt->close(); $stmt = $conexion->prepare("DELETE FROM proveedores_productos WHERE ID_Proveedor = ?"); $stmt->bind_param("i", $id); $stmt->execute(); $stmt->close(); $stmt = $conexion->prepare("DELETE FROM proveedores WHERE ID_Proveedor = ?"); $stmt->bind_param("i", $id); $stmt->execute(); if ($stmt->affected_rows === 0) { $stmt->close(); $conexion->rollback(); echo json_encode(['success' => false, 'error' => 'Proveedor no encontrado']); exit; } $stmt->close(); $conexion->commit(); echo json_encode(['success' => true, 'message' => 'Proveedor eliminado']); } catch (Exception $e) { $conexion->rollback(); echo json_encode(['success' => false, 'error' => 'Error al eliminar proveedor: ' . $e->getMessage()]); } $conexion->close(); ?>