Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membina sistem SKU berbilang spesifikasi produk dalam PHP

Bagaimana untuk membina sistem SKU berbilang spesifikasi produk dalam PHP

WBOY
WBOYasal
2023-09-05 11:14:04872semak imbas

Bagaimana untuk membina sistem SKU berbilang spesifikasi produk dalam PHP

Cara membina sistem SKU berbilang spesifikasi produk dalam PHP

Sistem SKU berbilang spesifikasi produk ialah kaedah pengurusan produk yang sangat biasa dalam e-dagang Melalui sistem ini, pelbagai spesifikasi dan atribut produk boleh dilakukan dengan mudah terurus. Apabila membina sistem SKU berbilang spesifikasi produk dalam PHP, anda boleh menggunakan pangkalan data untuk menyimpan data spesifikasi dan atribut produk serta menggunakan struktur tatasusunan dan gelung PHP untuk memproses dan memaparkan data ini.

Di bawah ini saya akan memperkenalkan secara terperinci cara membina sistem SKU pelbagai spesifikasi produk yang mudah dalam PHP.

Pertama, kita perlu mencipta dua jadual dalam pangkalan data, satu untuk menyimpan spesifikasi produk dan satu lagi untuk menyimpan atribut produk.

Struktur jadual spesifikasi adalah seperti berikut:

CREATE TABLE `specifications` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Struktur jadual atribut adalah seperti berikut:

CREATE TABLE `attributes` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `specification_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `specification_id` (`specification_id`),
  CONSTRAINT `attributes_ibfk_1` FOREIGN KEY (`specification_id`) REFERENCES `specifications` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Kemudian, kita boleh mendapatkan spesifikasi produk dan data atribut melalui kod berikut:

// 获取规格
$specs = [];
$sql = "SELECT * FROM specifications";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        $specs[$row['id']] = $row['name'];
    }
}

// 获取属性
$attrs = [];
foreach ($specs as $spec_id => $spec_name) {
    $sql = "SELECT * FROM attributes WHERE specification_id = " . $spec_id;
    $result = $conn->query($sql);
    if ($result->num_rows > 0) {
        while ($row = $result->fetch_assoc()) {
            $attrs[$spec_name][$row['id']] = $row['name'];
        }
    }
}

Seterusnya, kita boleh menggunakan borang untuk memaparkan Spesifikasi dan atribut produk, dan memilih spesifikasi dan atribut produk yang berbeza. Berikut ialah contoh bentuk mudah:

<form action="" method="post">
  <?php foreach ($specs as $spec_id => $spec_name): ?>
    <label><?php echo $spec_name; ?>:</label>
    <select name="spec_<?php echo $spec_id; ?>">
      <option value="">请选择</option>
      <?php foreach ($attrs[$spec_name] as $attr_id => $attr_name): ?>
        <option value="<?php echo $attr_id; ?>"><?php echo $attr_name; ?></option>
      <?php endforeach; ?>
    </select>
  <?php endforeach; ?>
  <button type="submit">加入购物车</button>
</form>

Akhir sekali, kita boleh mendapatkan spesifikasi produk dan atribut yang dipilih oleh pengguna melalui kod berikut:

$sku = [];
foreach ($_POST as $key => $value) {
    if (strpos($key, 'spec_') === 0 && $value != "") {
        $spec_id = substr($key, strlen('spec_'));
        $spec_name = $specs[$spec_id];
        $attr_id = $value;
        $attr_name = $attrs[$spec_name][$attr_id];
        $sku[$spec_name] = $attr_name;
    }
}

Melalui langkah di atas, kita boleh membina berbilang spesifikasi produk yang mudah dalam PHP SKU sistem. Melalui sistem ini, kami boleh menguruskan pelbagai spesifikasi dan atribut barangan dengan mudah, serta merealisasikan pemilihan dan paparan spesifikasi dan atribut ini.

Sudah tentu, sistem SKU berbilang spesifikasi produk sebenar akan menjadi lebih kompleks, dan lebih banyak fungsi dan butiran perlu dipertimbangkan. Walau bagaimanapun, melalui contoh di atas, anda boleh memahami cara membina sistem SKU berbilang spesifikasi produk ringkas berdasarkan PHP, dan mengembangkan serta mengoptimumkannya atas dasar ini. Harap artikel ini membantu anda!

Atas ialah kandungan terperinci Bagaimana untuk membina sistem SKU berbilang spesifikasi produk dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn