Rumah >pembangunan bahagian belakang >tutorial php >Pengenalan terperinci kepada fungsi pembelian kumpulan pusat membeli-belah dibangunkan menggunakan PHP

Pengenalan terperinci kepada fungsi pembelian kumpulan pusat membeli-belah dibangunkan menggunakan PHP

PHPz
PHPzasal
2023-07-02 17:28:37903semak imbas

Pengenalan terperinci kepada fungsi pembelian kumpulan pusat membeli-belah yang dibangunkan menggunakan PHP

Dengan perkembangan pesat industri e-dagang, pembelian berkumpulan telah menjadi model beli-belah yang popular. Bagi menyesuaikan diri dengan trend ini, banyak pusat membeli-belah telah mula memperkenalkan fungsi belian berkumpulan untuk meningkatkan kelekatan pengguna dan meningkatkan jualan. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi pembelian kumpulan pusat beli-belah dan menyediakan contoh kod yang berkaitan.

1. Prinsip pelaksanaan fungsi pembelian berkumpulan
Prinsip pelaksanaan fungsi pembelian berkumpulan terutamanya melibatkan aspek berikut:

  1. Paparan produk pembelian berkumpulan: Pusat membeli-belah perlu dapat memaparkan maklumat produk pembelian berkumpulan , termasuk gambar, nama, harga pembelian kumpulan dan harga asal produk , baki masa, dsb.
  2. Menyertai dan menarik diri daripada kumpulan: Pengguna boleh memilih untuk menyertai atau menarik diri daripada kumpulan. Apabila menyertai lawatan, anda perlu menentukan sama ada terdapat inventori yang mencukupi Jika inventori tidak mencukupi, pengguna tidak akan dapat menyertai lawatan tersebut. Apabila membatalkan kumpulan, pengguna perlu dialih keluar daripada pesanan pembelian kumpulan.
  3. Pembelian dan pembayaran: Selepas menyertai kumpulan, pengguna boleh memilih untuk membeli produk pembelian berkumpulan. Semasa proses pembelian, anda perlu menjana pesanan, mengira harga dan memilih kaedah pembayaran.
  4. Kemas kini status pembelian kumpulan: Satu lagi fungsi penting ialah dapat mengemas kini status pembelian kumpulan dalam masa nyata, seperti baki masa, bilangan orang yang telah menyertai kumpulan, dsb.

2. Reka bentuk pangkalan data dan paparan produk
Pertama, kita perlu mereka bentuk jadual pangkalan data untuk menyimpan maklumat produk pembelian berkumpulan dan maklumat pesanan pembelian berkumpulan. Buat dua jadual dalam pangkalan data: barang dan pesanan. Struktur jadual

  1. barang adalah seperti berikut:
CREATE TABLE goods (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    price DECIMAL(10, 2) NOT NULL,
    stock INT NOT NULL,
    start_time TIMESTAMP NOT NULL,
    end_time TIMESTAMP NOT NULL,
    image VARCHAR(255) NOT NULL
);
  1. Struktur jadual pesanan adalah seperti berikut:
CREATE TABLE orders (
    id INT PRIMARY KEY AUTO_INCREMENT,
    user_id INT NOT NULL,
    goods_id INT NOT NULL,
    price DECIMAL(10, 2) NOT NULL,
    quantity INT NOT NULL,
    total_price DECIMAL(10, 2) NOT NULL,
    payment_status INT NOT NULL,
    create_time TIMESTAMP NOT NULL,
    FOREIGN KEY (user_id) REFERENCES users(id),
    FOREIGN KEY (goods_id) REFERENCES goods(id)
);

Seterusnya, kita boleh menulis kod PHP untuk memaparkan maklumat produk pembelian berkumpulan. Kodnya adalah seperti berikut:

<?php
// 获取团购商品信息
$sql = "SELECT * FROM goods WHERE end_time > NOW()";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_assoc($result)) {
        echo "商品名称:" . $row['name'] . "<br>";
        echo "团购价格:" . $row['price'] . "<br>";
        echo "原价:" . $row['original_price'] . "<br>";
        echo "剩余时间:" . $row['end_time'] - time() . "<br>";
        echo "<img src='" . $row['image'] . "'><br>";
        echo "<br>";
    }
} else {
    echo "当前没有团购商品";
}

mysqli_close($conn);
?>

3. Menyertai dan menarik diri daripada kumpulan

Seterusnya, kita perlu melaksanakan fungsi untuk pengguna menyertai dan menarik diri daripada kumpulan.

  1. Apabila pengguna menyertai lawatan kumpulan, kami perlu terlebih dahulu menentukan sama ada inventori produk semasa adalah mencukupi. Jika stok tidak mencukupi, pengguna akan digesa bahawa mereka tidak boleh mengambil bahagian dalam kumpulan jika stok mencukupi, pesanan pembelian kumpulan akan dihasilkan.
  2. Apabila pengguna menarik diri daripada kumpulan, dia perlu menyemak dahulu sama ada pengguna telah menyertai kumpulan itu. Jika pengguna telah menyertai pembelian kumpulan, pengguna akan dialih keluar daripada pesanan pembelian kumpulan.

Berikut adalah contoh kod:

<?php
// 用户参团
$goodsId = $_POST['goodsId'];
$userId = $_SESSION['userId'];

$sql = "SELECT stock FROM goods WHERE id = $goodsId";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$stock = $row['stock'];

if ($stock <= 0) {
    echo "库存不足,无法参团";
} else {
    // 生成团购订单
    $sql = "INSERT INTO orders (user_id, goods_id, price, quantity, total_price, payment_status, create_time) VALUES ($userId, $goodsId, $price, 1, $price, 0, NOW())";
    $result = mysqli_query($conn, $sql);

    echo "参团成功";
}

// 用户退团
$orderId = $_POST['orderId'];

$sql = "DELETE FROM orders WHERE id = $orderId";
$result = mysqli_query($conn, $sql);

echo "退团成功";

mysqli_close($conn);
?>

4. Pembelian dan pembayaran

Pembelian dan pembayaran adalah bahagian yang sangat penting dalam fungsi pembelian kumpulan. Selepas menyertai kumpulan, pengguna boleh memilih untuk membeli produk pembelian kumpulan dan memilih kaedah pembayaran.

Berikut adalah contoh kod:

<?php
// 用户购买和支付
$orderId = $_POST['orderId'];
$paymentMethod = $_POST['paymentMethod'];

$sql = "SELECT * FROM orders WHERE id = $orderId";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$totalPrice = $row['total_price'];

// 根据支付方式处理支付逻辑
if ($paymentMethod == 'wechat') {
    // 微信支付
    // 调用微信支付接口
    echo "调用微信支付接口,支付金额为:" . $totalPrice;
} elseif ($paymentMethod == 'alipay') {
    // 支付宝支付
    // 调用支付宝支付接口
    echo "调用支付宝支付接口,支付金额为:" . $totalPrice;
} else {
    echo "无效的支付方式";
}

mysqli_close($conn);
?>

5. Kemas kini status pembelian kumpulan

Fungsi terakhir adalah untuk mengemas kini status pembelian kumpulan, seperti baki masa dan bilangan orang yang telah menyertai kumpulan. Kami boleh menggunakan JavaScript untuk memuat semula halaman dengan kerap untuk mencapai kemas kini masa nyata.

<script type="text/javascript">
    function updateCountdown() {
        // 更新剩余时间
        var endTime = "<?php echo $row['end_time']; ?>";
        var remainingTime = new Date(endTime) - new Date();
        document.getElementById("countdown").innerHTML = remainingTime;

        // 更新已参团人数
        var participants = "<?php echo $participants; ?>";
        document.getElementById("participants").innerHTML = participants;
    }
    setInterval(updateCountdown, 1000);
</script>

Di atas adalah pengenalan terperinci kepada fungsi pembelian kumpulan pusat membeli-belah yang dibangunkan menggunakan PHP. Dengan merealisasikan paparan produk pembelian kumpulan, penyertaan dan pengeluaran kumpulan, pembelian dan pembayaran, dan kemas kini status pembelian kumpulan, kami boleh memperkenalkan fungsi pembelian kumpulan yang berkuasa ke dalam pusat membeli-belah untuk meningkatkan pengalaman dan jualan pengguna. Semoga artikel ini bermanfaat kepada anda.

Atas ialah kandungan terperinci Pengenalan terperinci kepada fungsi pembelian kumpulan pusat membeli-belah dibangunkan menggunakan 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