在電子商務中,SKU(Stock Keeping Unit)是指庫存量單位,用於標識和管理具體的商品。商城的SKU功能可以讓商家更好地管理商品的庫存和銷售情況,方便客戶選擇和購買商品。本文將通過一個簡單的PHP示例,演示如何實現商城SKU功能。
首先,我們需要創建兩個數據表:一個用於存儲商品信息,另一個用於存儲SKU信息。
CREATE TABLE `products` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, `price` DECIMAL(10,2) NOT NULL, `description` TEXT, PRIMARY KEY (`id`) );
CREATE TABLE `skus` ( `id` int(11) NOT NULL AUTO_INCREMENT, `product_id` int(11) NOT NULL, `size` VARCHAR(50) NOT NULL, `color` VARCHAR(50) NOT NULL, `stock` int(11) NOT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`product_id`) REFERENCES `products`(`id`) ON DELETE CASCADE );
接下來,我們將展示如何使用PHP代碼連接數據庫並操作SKU相關功能。
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn-> connect_error) { die("連接失敗: " . $conn->connect_error); } ?>
function getProducts() { global $conn; $sql = "SELECT * FROM products"; $result = $conn->query($sql); if ($result->num_rows > 0) { $products = array(); while($row = $result->fetch_assoc()) { $products[] = $row; } return $products; } else { return null; } }
function getSkusByProduct($product_id) { global $conn; $sql = "SELECT * FROM skus WHERE product_id = $product_id"; $result = $conn->query($sql); if ($result->num_rows > 0) { $skus = array(); while($row = $result->fetch_assoc()) { $skus[] = $row; } return $skus; } else { return null; } }
function updateStock($sku_id, $quantity) { global $conn; $sql = "UPDATE skus SET stock = stock - $quantity WHERE id = $sku_id"; $conn->query($sql); }
function addSku($product_id, $size, $color, $stock) { global $conn; $sql = "INSERT INTO skus (product_id, size, color, stock) VALUES ($product_id, '$size', '$color', $stock)"; $conn->query($sql); }
通過以上代碼示例,我們展示瞭如何使用PHP實現商城SKU功能。開發者可以根據實際需求進一步擴展和優化。希望這個例子能幫助你理解如何通過PHP高效管理商城商品庫存。