PHP后台评论的实现

不言
发布: 2018-07-05 14:09:23
原创
3723人浏览过

这篇文章主要介绍了关于php后台评论的实现,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

/**
    * 添加评论
    * content 评论内容
    * addtime 评论时间
    * uid  评论作品
    */
   public  function padd(){
       $param=input('param.');
       $param['pid']=session('tid');
       if(empty($param['uid'])){
           return json(['code'=>2,'message'=>'uid不能为空']);
       }
$data=db('comments')->insertGetId(['uid'=>$param['uid'],'content'=>$param['content'],'addtime'=>$param['addtime'],'pid'=>$param['pid']]);
       if($data){
           return json(['code'=>1,'message'=>'评论成功']);
       }else{
           return json(['code'=>2,'message'=>'评论失败']);
       }
   }
/**
    * 评论展示
    * uid   comments表
    * page  页数
    * num   条数
    */
   public function comment(){
       $param=input('param.');
       $param['pid']=session('tid');//用户id
       if(empty($param['page'])){
           $param['page']=1;
       }
if(empty($param['num'])){
           $param['num']=5;
       }
       if(empty($param['uid'])){
           return json(['code'=>2,'message'=>'uid不能为空']);
       }
$data=db('comments')->where('uid',$param['uid'])->page($param['page'],$param['num'])->select();
$commentslike=db('commentslike');
       $people=db('people');
       foreach ($data as $k=>$value) {
           //查看评论点赞表的状态
           $state=$commentslike->where(['pid'=>$param['pid'],'uid'=>$param['uid'],'cid'=>$value['data']])->value('state');
           if(empty($state)){
               $state = '还未点赞';
           }
           $data[$k]['state']=$state;
//获取评论人的手机号
           $people=$people->where('id',$value['pid'])->value('tel');
           $data[$k]['tel']=$people;

           //把二级评论添加到数组数据中
           if($value['rpid'] !== 0){
               // $r_pid = $commentslike->where(['id'=>$value['rpid']])->value('pid');
               $r_tel = $people->where('id',$value['rpid'])->value('tel');
               $data[$k]['r_tel'] = $r_tel;
           }else{
               $data[$k]['r_tel'] = '';
           }
}
       return json(['code'=>1,'data'=>$data]);
   }
/**
    * 评论点赞
    * uid  作品id
    */
   public function commentslike(){
      $param=input('param.');
      $param['pid']=session::get('tid');
if(empty($param['uid'])){
           return json(['code'=>2,'message'=>'uid不能为空']);
       }
       //判断该作品有没有评论
      $comments=db('comments')->where('uid',$param['uid'])->select();
      if(!empty($comments)){
           //判断他有没有点赞
           $data=db('commentslike')->where(['uid'=>$param['uid'],'pid'=>$param['pid'],'cid'=>$comments['id']])->find();
           if(empty($data)){
               $like=db('commentslike')->insertGetId(['uid'=>$param['uid'],'pid'=>$param['pid'],'cid'=>$comments['id'],$param['state']=>'点赞']);
               if($like){
                   return json(['code'=>1,'message'=>'点赞成功']);
               }else{
                   return json(['code'=>1,'message'=>'点赞失败']);
               }
           }else{
               if($data['state']=='取消点赞'){
                   $like=db('commentslike')->where(['uid'=>$param['uid'],'pid'=>$param['pid'],'cid'=>$comments['id']])->update([$param['state']=>'点赞']);
               }elseif($data['state']=='点赞'){
                   $like=db('commentslike')->where(['uid'=>$param['uid'],'pid'=>$param['pid'],'cid'=>$comments['id']])->update([$param['state']=>'取消点赞']);
               }
           }
}else{
           return json(['code'=>2,'message'=>'此作品还未评论']);
      }
   }
/**
    * 回复评论
    * uid 作品id
    * content  回复内容
    * cid   这条评论的id
    * uid 作品id  pid 评论人id  
    */
   public function reply(){
       $param['pid'] = session('tid');
       $param = input('param.');
       //被评论的id     $param['cid']
       $data = db('comments')->where(['id'=>$param['rid']])->find();
       if($data['rid'] !== 0){
           $param['rid'] = $data['rid'];//被回复人的pid.
       }
       $param['rid'] = $data['id'];//被回复人的pid.
$param['rpid'] = $data['pid'];
//评论内容  $param['content'] 
       //作品id  $param['uid']
       $param['addtime'] = date('Y-m-d H:i:s');
       $id = db('comments')->insertGetId(['uid'=>$param['uid'],'content'=>$param['content'],'addtime'=>$param['addtime'],'pid'=>$param['pid'],'rid'=>$param['rid']]);
       if($id){
           return json(['code'=>1,'messgae'=>'回复成功']);
       }else{
           return json(['code'=>2,'message'=>'回复失败']);
       }
   }

   /**
    * 查看二级评论
    * uid 作品id
    * rid   这条评论的id
    */
   public function GetRCommtens($value='')
   {
       $data = db('comments')->where(['rid'=>$param['rid']])->select();
   }
登录后复制

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

PHP使用Azure Storage Blob上传文件

AGI-Eval评测社区
AGI-Eval评测社区

AI大模型评测社区

AGI-Eval评测社区 63
查看详情 AGI-Eval评测社区

PHP后台图片上传作品的介绍

立即学习PHP免费学习笔记(深入)”;

以上就是PHP后台评论的实现的详细内容,更多请关注php中文网其它相关文章!

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号