PHP 仿盖楼式评论是一种网页应用功能,允许用户在文章或页面下方逐层嵌套地发表评论,形成类似“盖楼”的效果。每条评论可以回复其他评论,形成多层次的对话结构。
以下是一个简单的 PHP 仿盖楼式评论系统的示例代码:
<?php
// 数据库连接
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "comment_db";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取评论
$sql = "SELECT * FROM comments ORDER BY id DESC";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<div class='comment'>";
echo "<p>" . $row["content"] . "</p>";
echo "<p>By " . $row["username"] . " on " . $row["date"] . "</p>";
if ($row["parent_id"] == 0) {
getReplies($row["id"]);
}
echo "</div>";
}
} else {
echo "没有评论";
}
$conn->close();
function getReplies($parent_id) {
global $conn;
$sql = "SELECT * FROM comments WHERE parent_id = $parent_id ORDER BY id ASC";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<div class='reply'>";
echo "<p>" . $row["content"] . "</p>";
echo "<p>By "": " . $row["username"] . " on " . $row["date"] . "</p>";
getReplies($row["id"]);
echo "</div>";
}
}
}
?>
通过以上方法,可以实现一个功能完善、性能优良、安全可靠的 PHP 仿盖楼式评论系统。
领取专属 10元无门槛券
手把手带您无忧上云