如何使用PHP实现商品评价与评论系统

随着电子商务的普及,商品评价与评论系统已成为购物网站必备的功能之一。这种功能不仅可以提高用户的体验,也可以为商家提供价值信息,以优化他们的产品和服务。本文将介绍如何使用 PHP 实现一个简单的商品评价与评论系统。

第一步:创建数据库表格
首先,我们需要创建一个数据库表格,以存储评价与评论相关信息。我们可以使用以下 MySQL 命令来创建一个名为“comments”的表格:

CREATE TABLE comments (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
product_id INT(11) NOT NULL,
username VARCHAR(50) NOT NULL,
comment TEXT NOT NULL,
rating INT(1) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

这个表格包含六个列:id(自增主键)、product_id(商品编号)、username(用户名)、comment(评论内容)、rating(评分)和 created_at(评论发表时间)。

第二步:创建 PHP 文件
接下来,我们需要创建一个 PHP 文件,将连接到数据库并显示评价和评论。我们将使用 PDO 来建立连接,该连接执行以下步骤:

a. 连接 DB
b. 显示所有评论
c. 显示添加评论的表格

create_comments.php 

<?php
$con = new PDO('mysql:host=localhost;dbname=mydb;charset=utf8', 'myuser', 'mypassword');
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

//显示评论
if(isset($_GET['product_id'])){
 $stmt = $con->prepare('SELECT * FROM comments WHERE product_id=:product_id ORDER BY created_at DESC');
 $stmt->bindValue(':product_id', $_GET['product_id'], PDO::PARAM_INT);
 $stmt->execute();
 $comments = $stmt->fetchAll(PDO::FETCH_OBJ);
}else{
 $stmt = $con->query('SELECT * FROM comments ORDER BY created_at DESC');
 $comments = $stmt->fetchAll(PDO::FETCH_OBJ);
}

//显示添加评论的表格
echo '<form method="post" action="create_comment.php">';
echo '<h3>添加评论:</h3>';
echo '<p>用户名:<input type="text" name="username" required></p>';
echo '<p>评分:<input type="number" name="rating" min="1" max="5" required></p>';
echo '<p>评论:<textarea name="comment" required></textarea></p>';
echo '<input type="hidden" name="product_id" value="'.$_GET['product_id'].'">';
echo '<input type="submit" value="提交">';
echo '</form>';

//显示评论列表
echo '<h3>最新评论:</h3>';
foreach($comments as $comment){
 echo '<hr>';
 echo '<p>用户名:'.$comment->username.'</p>';
 echo '<p>评分:'.$comment->rating.'</p>';
 echo '<p>评论:'.$comment->comment.'</p>';
 echo '<p>发表时间:'.$comment->created_at.'</p>';
}
?>

第三步:处理表单提交
接下来,我们将创建另一个 PHP 文件,该文件将处理提交的表单并将其添加到数据库中。此文件的名称为 create_comment.php。这个文件将:

a. 验证表单数据
b. 添加评论到数据库
c. 重定向到 create_comments.php

create_comment.php

<?php
if($_SERVER['REQUEST_METHOD'] !== 'POST'){
 header('Location: create_comments.php');
 exit;
}

$con = new PDO('mysql:host=localhost;dbname=mydb;charset=utf8', 'myuser', 'mypassword');
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

//验证表单数据
$stmt = $con->prepare('INSERT INTO comments (product_id, username, comment, rating) VALUES (:product_id, :username, :comment, :rating)');
$stmt->bindValue(':product_id', $_POST['product_id'], PDO::PARAM_INT);
$stmt->bindValue(':username', $_POST['username'], PDO::PARAM_STR);
$stmt->bindValue(':comment', $_POST['comment'], PDO::PARAM_STR);
$stmt->bindValue(':rating', $_POST['rating'], PDO::PARAM_INT);
$stmt->execute();

header('Location: create_comments.php?product_id='.$_POST['product_id']);
exit;
?>

第四步:使用系统
现在,我们已经创建了一个完整的商品评价和评论系统。我们可以将 create_comments.php 页面与我们的商品详情页面链接起来,并确保它带有 product_id 参数。例如:

<a href="create_comments.php?product_id=12345">添加评论</a>

现在,用户可以使用此链接访问 create_comments.php 页面,查看现有评论,并添加自己的评论。商家可以根据用户的反馈来改进自己的产品和服务。

总结
本文简要介绍了如何使用 PHP 实现基本的商品评价和评论系统。我们创建了一个名为“comments”的 MySQL 数据库表格,它存储有关评论和评价的信息。之后,我们编写了两个 PHP 文件,一个用于显示评论,另一个用于添加评论。使用此系统,商家可以倾听用户的反馈和建议,以不断改善他们的产品和服务。

以上就是如何使用PHP实现商品评价与评论系统的详细内容,更多请关注其它相关文章!