prepare( "SELECT p.id, p.name, p.unit, p.price_net, p.price_gross, COALESCE( (SELECT CONCAT('uploads/products/', pi.file_path) FROM product_images pi WHERE pi.product_id = p.id AND pi.is_primary = 1), (SELECT CONCAT('uploads/products/', pi.file_path) FROM product_images pi WHERE pi.product_id = p.id ORDER BY pi.id ASC LIMIT 1) ) AS primary_image FROM products p WHERE p.id = :product_id" ); $stmt->execute(['product_id' => $product_id]); $added_product = $stmt->fetch(PDO::FETCH_ASSOC); // If product somehow doesn't exist, redirect away if (!$added_product) { header('Location: cart.php'); exit; } $added_product_price = getEffectivePrice($db, $added_product['id'], $_SESSION['client_id'] ?? null); // If image is not found, use a placeholder if (empty($added_product['primary_image'])) { $added_product['primary_image'] = 'assets/pasted-20251212-131440-62c0087c.jpg'; // A default placeholder } // Fetch related products (accessories) $related_products_stmt = $db->prepare( "SELECT p.id, p.name, p.unit, p.price_net, p.price_gross, COALESCE( (SELECT CONCAT('uploads/products/', pi.file_path) FROM product_images pi WHERE pi.product_id = p.id AND pi.is_primary = 1), (SELECT CONCAT('uploads/products/', pi.file_path) FROM product_images pi WHERE pi.product_id = p.id ORDER BY pi.id ASC LIMIT 1) ) AS primary_image FROM products p JOIN product_relations pr ON p.id = pr.related_product_id WHERE pr.product_id = :product_id AND p.product_role = 'akcesoria' GROUP BY p.id "); $related_products_stmt->execute(['product_id' => $product_id]); $related_products = $related_products_stmt->fetchAll(PDO::FETCH_ASSOC); $user_role = get_user_role(); ?>

<?= htmlspecialchars($added_product['name']); ?>
0): ?> :