Cara melaksanakan fungsi statistik penarafan produk di PHP Developer City
Dengan perkembangan e-dagang, lebih banyak laman web pusat membeli-belah telah mula memberi perhatian kepada ulasan dan penarafan produk untuk menyediakan pengguna dengan lebih banyak rujukan membeli-belah sebenar. Di Bandar Pembangun PHP, melaksanakan fungsi statistik penilaian produk adalah bahagian yang sangat penting. Artikel ini akan memperkenalkan kaedah untuk melaksanakan statistik penilaian produk.
1. Reka bentuk pangkalan data
Pertama sekali, kita perlu mereka bentuk jadual pangkalan data yang berkaitan dengan statistik penilaian produk. Secara umumnya, sekurang-kurangnya satu jadual produk dan satu jadual penilaian diperlukan.
Jadual produk (produk) mengandungi medan berikut:
Jadual rating (rating) mengandungi medan berikut :
...
Halaman butiran produk Dalam halaman butiran produk, kami perlu memaparkan statistik penilaian produk. Kodnya adalah seperti berikut:<?php // 获取商品ID $product_id = $_GET['product_id']; // 查询商品信息 $query = "SELECT * FROM product WHERE id = $product_id"; $result = mysqli_query($conn, $query); $product = mysqli_fetch_array($result); // 查询评分统计信息 $query = "SELECT AVG(rating) AS average_rating, COUNT(*) AS total_ratings FROM rating WHERE product_id = $product_id"; $result = mysqli_query($conn, $query); $rating_info = mysqli_fetch_array($result); // 输出评分统计信息 echo "商品名称:" . $product['name'] . "<br>"; echo "商品价格:" . $product['price'] . "<br>"; echo "平均评分:" . $rating_info['average_rating'] . "<br>"; echo "总评分数:" . $rating_info['total_ratings'] . "<br>"; ?>
<?php // 处理用户提交的评分表单 if(isset($_POST['rating'])) { // 获取用户ID $user_id = $_SESSION['user_id']; // 获取商品ID $product_id = $_GET['product_id']; // 获取评分 $rating = $_POST['rating']; // 插入评分记录 $query = "INSERT INTO rating (product_id, user_id, rating) VALUES ($product_id, $user_id, $rating)"; mysqli_query($conn, $query); // 刷新当前页面 header("Location: product.php?product_id=$product_id"); exit(); } // 输出评分表单 echo "<form action='product.php?product_id={$product['id']}' method='post'>"; echo "评分:<input type='number' name='rating' min='1' max='5' required>"; echo "<input type='submit' value='提交'>"; echo "</form>"; ?>
// 更新评分统计信息 $query = "UPDATE product SET average_rating = (SELECT AVG(rating) FROM rating WHERE product_id = $product_id), total_ratings = (SELECT COUNT(*) FROM rating WHERE product_id = $product_id) WHERE id = $product_id"; mysqli_query($conn, $query);
Atas ialah kandungan terperinci Kaedah pelaksanaan fungsi statistik penarafan produk di bandar pembangun PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!