Maison > Article > développement back-end > Méthode de mise en œuvre de la fonction de statistiques d'évaluation des produits dans PHP Developer City
Comment implémenter la fonction de statistiques d'évaluation des produits dans PHP Developer City
Avec le développement du commerce électronique, de plus en plus de sites Web de centres commerciaux ont commencé à prêter attention aux avis et aux évaluations de produits pour fournir aux utilisateurs des références d'achat plus réelles. Dans PHP Developer City, la mise en œuvre de la fonction de statistiques d'évaluation des produits est une partie très importante. Cet article présentera une méthode pour mettre en œuvre des statistiques d'évaluation des produits.
1. Conception de la base de données
Tout d'abord, nous devons concevoir le tableau de la base de données lié aux statistiques d'évaluation des produits. De manière générale, au moins un tableau de produits et un tableau de notation sont requis.
Le tableau des produits (product) contient les champs suivants :
Le tableau de notation (rating) contient les champs suivants :
2. Page de détails du produit
Dans la page de détails du produit, nous devons afficher les statistiques d'évaluation du produit. Le code est le suivant :
<?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>"; ?>
3. Fonction d'évaluation
Dans la page de détails du produit, nous devons également ajouter une fonction d'évaluation afin que les utilisateurs puissent évaluer le produit. Le code est le suivant :
<?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>"; ?>
4. Mise à jour des statistiques de notation
Une fois que l'utilisateur a évalué le produit, les statistiques de notation du produit doivent être mises à jour. Après avoir inséré l'enregistrement d'évaluation, vous pouvez ajouter le code suivant :
// 更新评分统计信息 $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);
5. Affichage frontal
L'affichage frontal peut être embelli et stylisé en fonction des besoins réels, et peut être implémenté en utilisant JavaScript et CSS. Vous pouvez obtenir un affichage dynamique des notes, telles que les notes par étoiles, en utilisant des frameworks frontaux tels que jQuery.
Résumé :
Grâce aux étapes ci-dessus, nous pouvons réaliser la fonction statistique d'évaluation du produit. Tout d'abord, concevez la structure de la table de base de données, puis affichez les statistiques d'évaluation et le formulaire d'évaluation sur la page de détails du produit. Dans le même temps, la méthode de mise à jour des statistiques d'évaluation doit également être mise en œuvre en arrière-plan. Enfin, embellissez et stylisez la partie avant selon vos besoins.
Il s'agit d'une méthode simple pour mettre en œuvre la fonction statistique d'évaluation des produits, qui peut être étendue et optimisée en fonction des besoins réels du projet, par exemple en prenant en compte des problèmes tels que la déduplication et la sécurité. J'espère que cet article pourra vous aider à mettre en œuvre la fonction de statistiques d'évaluation des produits.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!