ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して製品のマルチスペック SKU 機能を実装する方法

PHP を使用して製品のマルチスペック SKU 機能を実装する方法

WBOY
WBOYオリジナル
2023-09-05 08:25:581615ブラウズ

PHP を使用して製品のマルチスペック SKU 機能を実装する方法

PHP を使用して製品のマルチ仕様 SKU 機能を実装する方法

マルチ仕様の製品 SKU は、電子商取引プラットフォーム上の共通の製品属性設定であり、販売者はこれを使用して次のことを行うことができます。消費者のさまざまなニーズや好みに合わせて、同じ製品を異なる仕様と価格で設定します。この記事では、PHP を使用して製品のマルチ仕様 SKU 機能を実装する方法と、対応するコード例を紹介します。困っている読者のお役に立てれば幸いです。

1. データ構造設計

製品のマルチスペックSKU機能を実装する前に、まずデータベースのデータ構造を設計する必要があります。製品に色、サイズ、価格の 3 つの仕様があるとします。まず、2 つのデータベース テーブルを作成する必要があります。1 つは仕様の属性情報を格納するため、もう 1 つは SKU 情報を格納するためです。

  1. 仕様属性テーブル (属性)

CREATE TABLE attributes (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) NOT NULL,
PRIMARY KEY (id)
);

  1. SKU 情報テーブル(skus)

CREATE TABLE skus (
id int(11) NOT NULL AUTO_INCREMENT,
attribute_id int(11) NOT NULL,
value varchar(255) NOT NULL,
price 10,2) NOT NULL,
主キー (id),
外部キー (attribute_id)
参照 attributes (id)
ON DELETE CASCADE
);

2. バックエンド管理ページ

  1. 仕様属性リストの表示

まず、バックエンド管理で仕様属性リストを表示する必要があります。販売者向けのページでは、仕様属性を追加および編集します。

//データベースに接続します
$conn = new mysqli("localhost", "username", "password", "database");

# #/ / クエリ仕様属性リスト

$query = "SELECT * FROM 属性";
$result = $conn->query($query);
?>gt;

< ;! -- 仕様属性リスト -->

仕様属性名fetch_assoc()): ?>
    仕様属性の追加と編集
販売者が仕様属性を追加または編集する必要がある場合、記入してデータベースに保存するための対応するフォームが提供されます。

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// フォーム送信を処理します
$name = $_POST['name' ];
//仕様属性をデータベースに保存

$query = "INSERT INTO 属性 (
name) VALUES ('{$name}')"; $ conn ->query($query);
}
?>




保存

    SKU 情報の表示
バックグラウンド管理ページでは、次の操作を行う必要があります。販売者が SKU 情報を追加および編集できるように、SKU 情報リストを表示します。

// SKU 情報リストのクエリ
$query = "SELECT skus.*,attributes.name asattribute FROM skus JOIN 属性 ON skus.attribute_id =attribute.id";
$result = $conn->query($query);
?>

仕様の属性仕様値fetch_assoc()): ?>
  1. SKU 情報の追加と編集

販売者が SKU 情報を追加または編集する必要がある場合、入力してデータベースに保存するための対応するフォームが提供されます。

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// フォーム送信を処理します
$attributeId = $_POST['attribute_id' ];
$value = $_POST['value'];
$price = $_POST['price'];

// SKU 情報をデータベースに保存します
$query = " INSERT INTO skus (attribute_id, value, price) VALUES ('{$attributeId}', '{$value}', '{$price}) ' )";
$conn->query($query);
}
?>


< ;form method="POST" action="">

<option value="" disabled selected>请选择规格属性</option>
<?php
// 查询规格属性列表
$query = "SELECT * FROM attributes";
$result = $conn->query($query);

while ($row = $result->fetch_assoc()):
?>
<option value="<?php echo $row['id']; ?>"><?php echo $row['name']; ?></option>
<?php endwhile; ?>




価格

3. フロントエンド製品詳細ページ

フロントエンド製品詳細ページでは、製品の仕様属性と SKU 情報を表示する必要があります。選択仕様属性と対応する SKU 情報関数を提供します。

  1. 仕様属性と SKU 情報の表示

// クエリ仕様属性リスト
$query = "SELECT * FROM 属性";
$result = $conn->query($query);
?>



<script><br>$(document).ready(function() {<br> // 仕様属性の選択イベントのリッスン<br> $('#attribute').change(function() {</script>

var attributeId = $(this).val();

$.ajax({
  url: 'get_sku_info.php',
  method: 'POST',
  dataType: 'json',
  data: {attributeId: attributeId},
  success: function(data) {
    // 清空SKU信息显示区域
    $('#sku-info').empty();
    
    // 根据返回的SKU信息动态添加到显示区域
    $.each(data, function(index, item) {
      var skuHtml = '<div>';
      skuHtml += '<span>' + item.attribute + ': ' + item.value + '</span>';
      skuHtml += '<span>价格: ' + item.price + '</span>';
      skuHtml += '</div>';
      
      $('#sku-info').append(skuHtml);
    });
  }
});

});
});

  1. SKU 情報の取得

フロント ページでは、Ajax を使用してバックエンド インターフェイスにリクエストし、対応する仕様属性で SKU 情報を取得する必要があります。

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$attributeId = $_POST['attributeId'];

// 対応する仕様属性の SKU 情報をクエリします。
$query = "SELECT skus.*,attribute.name asattribute FROM skus JOIN 属性 ON skus.attribute_id =attribute_id WHERE skus.attribute_id = '{$attributeId} ' ";
$result = $conn->query($query);

$skus = [];
while ($row = $result->fetch_assoc()) {

$skus[] = $row;

}

echo json_encode($skus);
}
?>

IV. 概要

この記事では、その方法を紹介します。 PHPを使用すると、複数の仕様の製品のSKU機能が実装されます。データベースのデータ構造を設計し、バックエンド管理ページとフロントエンド商品詳細ページを開発することで、販売者が仕様属性やSKU情報を柔軟に追加および編集できるようにし、消費者が仕様属性に基づいて対応するSKUを選択できるようにします。仕様の属性。この記事が、e コマース プラットフォームを開発している読者にインスピレーションを与え、役立つことを願っています。

###価格###

以上がPHP を使用して製品のマルチスペック SKU 機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。