下面是一个简单的基于PHP的评价系统示例

2025-04-12ASPCMS社区 - fjmyhfvclm

下面是一个简单的基于PHP的评价系统示例。这个系统允许用户提交评价,并显示所有提交的评价。为了简单起见,这个示例使用PHP的数组来存储评价数据,而不是数据库。

php

复制代码

<?php

// 初始化评价数组

$reviews = [];

// 模拟从数据库加载现有评价(实际项目中,你会从数据库加载)

if (file_exists('')) {

$reviews = json_decode(file_get_contents('reviews.json'), true);

}

// 处理评价提交

if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['review'])) {

$newReview = trim($_POST['review']);

if (!empty($newReview)) {

$reviews[] = $newReview;

// 将评价保存到JSON文件(模拟数据库保存)

file_put_contents('reviews.json', json_encode($reviews));

} else {

$error = "评价内容不能为空。";

}

}

?>

<!DOCTYPE html>

<html lang="zh-CN">

展开全文

<head>

<meta charset="UTF-8">

<title>评价系统</title>

</head>

<body>

<h1>评价系统</h1>

<?php if (isset($error)): ?>

<p style="color: red;"><?php echo htmlspecialchars($error); ?></p>

<?php endif; ?>

<form method="post">

<label for="review">提交评价:</label><br>

<textarea id="review" name="review" rows="4" cols="50"></textarea><br>

<input type="submit" value="提交">

</form>

<h2>所有评价</h2>

<ul>

<?php if (empty($reviews)): ?>

<li>暂无评价。</li>

<?php else: ?>

<?php foreach ($reviews as $review): ?>

<li><?php echo htmlspecialchars($review); ?></li>

<?php endforeach; ?>

<?php endif; ?>

</ul>

</body>

</html>

代码说明:

数据存储:评价数据存储在一个PHP数组中,并在页面加载时从JSON文件(reviews.json)中读取(模拟数据库)。在提交新评价时,数组会更新并保存回JSON文件。

表单处理:使用HTML表单提交评价,通过POST方法接收评价内容。

安全处理:使用htmlspecialchars()函数来防止XSS攻击,确保用户输入的内容在显示时被正确转义。

显示评价:所有评价以列表形式显示。如果没有评价,则显示“暂无评价”。

注意事项:

文件权限:确保reviews.json文件有适当的读写权限,以便PHP可以读取和写入数据。

生产环境:在生产环境中,应使用数据库(如MySQL)来存储评价数据,而不是文件系统。

安全性:进一步增强安全性,例如验证用户输入、使用CSRF令牌等。

这个示例提供了一个基本的评价系统框架,你可以根据需要进行扩展和修改。

全部评论