评论设计方案-后端业务实现

本文介绍了后端评论系统的实现,包括详细的表设计和数据获取代码,以及后台页面的数据遍历逻辑,提供了一套完整的评论功能解决方案。
摘要由CSDN通过智能技术生成

后台效果预览:
后台效果预览
一、表设计如下:

///评论表SQL
CREATE TABLE `web_comment` (
  `com_id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '评论id',
  `parent_com_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '评论父id',
  `com_title` varchar(40) NOT NULL DEFAULT '' COMMENT '评论昵称',
  `com_email` varchar(100) NOT NULL DEFAULT '' COMMENT '评论联系邮箱',
  `com_content` varchar(255) NOT NULL DEFAULT '' COMMENT '评论内容',
  `com_reply_status` int(2) NOT NULL DEFAULT '0' COMMENT '评论回复状态:0未回复,1已回复',
  `com_show_status` int(2) NOT NULL DEFAULT '0' COMMENT '评论展示状态:0未审核、1审核通过、2审核不通过',
  `com_ip` char(20) NOT NULL DEFAULT '' COMMENT '评论ip',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  PRIMARY KEY (`com_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='评论表';

二、获取数据代码如下

<?php
namespace app\back\model;

use think\Db;

///留言表
class CommentModel
{
    /// 用于存放子级数据
    private $child = [];

    ///获取评论数据
    public function getCommentData(){
        $top_map = [
            'parent_com_id' =>  0
        ];
        ///获取一级评论数据{desc最新的评论显示在顶部}
        $top_comment_data = Db::table('web_comment')->alias('b')->where($top_map)->order('b.com_show_status asc,b.com_reply_status asc,b.update_time desc')->column('b.com_id,b.parent_com_id,b.com_title,b.com_email,b.com_content,b.com_reply_status,b.com_show_status
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值