Thinkphp带表情的评论回复实例

Thinkphp带表情的评论回复实例

基于Thinkphp开发的一个简单的带表情的评论回复实例,可以无限回复,适合新手学习或作为毕业设计作品等。

 

评论提交验证

1 $(".submit-btn").click(function() { 
2     var $this = $(this); 
3     var name = $this.parent().siblings().children('.name1').val(); 
4     var content = $this.parent().siblings().children('.comment').val(); 
5     if (name == "" || content == "") { 
6         alert("昵称或者评论不能为空哦"); 
7         return false; 
8     } 
9 });

 

添加评论

 1 $rules = array(//定义动态验证规则 
 2     array('comment', 'require', '评论不能为空'), 
 3     array('username', 'require', '昵称不能为空'), 
 4 //            array('username', '3,15', '用户名长度必须在3-15位之间!', 0, 'length', 3), 
 5 ); 
 6 $data = array( 
 7     'content' => I("post.comment"), 
 8     'ip' => get_client_ip(), 
 9     'add_time' => time(), 
10     'pid' => I('post.pid'), 
11     'author' => I('post.username'), 
12 ); 
13  
14 $comment = M("comment"); // 实例化User对象 
15 if (!$comment->validate($rules)->create()) {//验证昵称和评论 
16     exit($comment->getError()); 
17 } else { 
18     $add = $comment->add($data); 
19     if ($add) { 
20         $this->success('评论成功'); 
21     } else { 
22         $this->error('评论失败'); 
23     } 
24 }

 

评论递归函数

 1 function CommentList($pid = 0, &$commentList = array(), $spac = 0) { 
 2     static $i = 0; 
 3     $spac = $spac + 1; //初始为1级评论 
 4     $List = M('comment')-> 
 5                     field('id,add_time,author,content,pid')-> 
 6                     where(array('pid' => $pid))->order("id DESC")->select(); 
 7     foreach ($List as $k => $v) { 
 8         $commentList[$i]['level'] = $spac; //评论层级 
 9         $commentList[$i]['author'] = $v['author']; 
10         $commentList[$i]['id'] = $v['id']; 
11         $commentList[$i]['pid'] = $v['pid']; //此条评论的父id 
12         $commentList[$i]['content'] = $v['content']; 
13         $commentList[$i]['time'] = $v['add_time']; 
14         // $commentList[$i]['pauthor']=$pautor; 
15         $i++; 
16         $this->CommentList($v['id'], $commentList, $spac); 
17     } 
18     return $commentList; 
19 }

本文转自:https://www.sucaihuo.com/php/557.html 转载请注明出处!

posted on 2019-09-08 11:32 mrlime 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/mrlime/p/11484878.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461412.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

amd cpu不能在cmd环境下运行java代码_「我们一起学Java02」JDK、JRE、JVM简介,Java开发平台的搭建...

Hello,各位头条的读者大家好!接下来一段时间小编将和大家一起学习Java,“我们一起学Java”专题将会持续更新,欢迎大家关注。这里是“我们一起学Java”的第二篇,本文主要内容:1.JDK、JRE、JVM的简单介绍2.JD…

让Microsoft Web Application Stress Tool 支持非80端口的站点测试

刚在做内网内某个项目的性能测试 项目部署的端口为4000 然后用Microsoft Web Application Stress Tool 测试 发现居然不支持非80端口 找遍整个配置界面没发现port选项 寻思着会不会是写到配置文件里呢 于是打开安装目录寻找 苍天不负有心人 居然找到了WAS.mdb 这个文件 停掉web…

Windows 7操作系统使用移动硬盘快速安装

准备工作一个移动硬盘一个win7 ISO镜像文件解压缩工具(rar或zip等)当前系统(windows)第1步:创建分区进入当前系统,插入移动硬盘,右键“计算机”选择“管理”,然后双击“存储”,再双击“磁盘管理(本地)”。推荐对移动硬…

线程池参数详解

转载来自:http://blog.csdn.net/zhouhl_cn/article/details/7392607 和http://www.cnblogs.com/dolphin0520/p/3932921.html JDK1.5中引入了强大的concurrent包,其中最常用的莫过了线程池的实现ThreadPoolExecutor,它给我们带来了极大的方便&…

LeetCode20——Valid Parentheses(括号匹配问题,使用栈的知识)

题目&#xff1a; 解法&#xff1a; #include <stack>class Solution { public:bool isValid(string s) {stack<char> paren;for (char& c : s) {switch (c) {case (: case {: case [: paren.push(c);break;case ): if (paren.empty() || paren.top()!() retur…

文本框输入怎么样让键盘消失

把View 类改成UIControl 给View加onTouchDown事件 /* *点击空白处让键盘消失 */ - (IBAction)onTouchDownEvent:(id)sender { [tf1 resignFirstResponder]; [tf2 resignFirstResponder]; } 转载于:https://www.cnblogs.com/skyblue/archive/2013/01/25/2877012.html

取周一时间_周一到周五不好化妆?别着急,5款夏日通勤裸妆的教程来了!

化妆已经成为了许多女生每天的必修课&#xff0c;好的妆容不仅可以让自己显得有精神还可以增添自己的自信。但是每天早上起来&#xff0c;能够化妆的时间又不多&#xff0c;所以只好每天都重复同一样妆容&#xff0c;快速便捷&#xff0c;时间久了就渐渐感觉了无生趣。尤其是周…

LeetCode22——Generate Parentheses(给定n对括号,然后看有多少正确的括号组合)

题目&#xff1a; 解法&#xff1a; The idea is intuitive. Use two integers to count the remaining left parenthesis (n) and the right parenthesis (m) to be added. At each function call add a left parenthesis if n >0 and add a right parenthesis if m>0.…

win10 Snipaste 截图软件

安装教程&#xff1a;搜索 snipaste&#xff0c;网上可以直接下载使用教程&#xff1a; 1&#xff09;截图按钮&#xff1a;F1 2&#xff09;粘贴按钮&#xff1a;F3转载于:https://www.cnblogs.com/duende99/p/11489559.html

docker安装mysql_Docker 安装 MySQL

本篇将介绍如何使用 Docker 部署 MySQL 数据库及远程访问配置。安装 MySQL拉取镜像使用下面的命令拉取 MySQL 数据库的镜像&#xff1a;$ sudo docker pull mysql # 拉取最新版本的镜像&#xff0c;当前为 MySQL 8 版本&#xff0c;tag 为 latest$ sudo docker pull mysql:5.7…

SurfaceView闪烁问题

SurfaceView是frontbuffer和backbuffer交替显示的&#xff0c;每次Post交替一次&#xff0c;按你这样写两个Buffer是不一样的所有奇数的Post画在一起&#xff0c;偶数的画在另外个Buffer&#xff0c;运行起来就会闪了。延时长一点就看的出来了。应用上加缓冲就可以了。 1234567…

图片预加载

function loadImage(url, callback) {if(url!null) {var img new Image();img.src url;if(img.complete) {callback(img);} else {img.onload function(){img.onload null;callback(img);} }} }loadImage(pic_url,loadImage);转载于:https://www.cnblogs.com/hitbs228/p/3…

RSA加密-解密以及解决超长内容加密失败解决

加解密&#xff08;没有使用到证书&#xff09;&#xff1a;https://blog.csdn.net/qy20115549/article/details/83105736生成证书网站&#xff1a;https://blog.csdn.net/u012191627/article/details/80990066解决超长内容加密失败解决方案&#xff08;台湾&#xff09;&#…

java的import和python的import对比_import导入的是什么

Q1&#xff1a;from import导入出错,单独导入则正确..您好&#xff0c; from UserDict import UserDict它与你所熟知的 import module 语法很相似&#xff0c;但是有一个重要的区别&#xff1a;UserDict 被直接导入到局部名字空间去了&#xff0c;所以它可以直接使用&#xff0…

LeetCode17——Letter Combinations of a Phone Number(手机几个按键对应的字母(符号)组合)

题目&#xff1a; 解法&#xff1a; Simple and efficient iterative solution. Explanation with sample input "123" Initial state: result {""} Stage 1 for number "1": result has {""}candiate is "abc"generate …

[转载]ext4的noatime

默认的方式下linux会把文件访问的时间atime做记录&#xff0c;这在绝大部分的场合都是没有必要的&#xff0c;如果遇到机器IO负载高或是CPU WAIT高的情况&#xff0c;可以尝试使用noatime和nodiratime 1、修改/etc/fstab&#xff0c;类似LABEL/ / …

python人人语音爬虫(登陆尚未完成,需要使用先登录在查cookie中的t)

2019独角兽企业重金招聘Python工程师标准>>> import urllib, urllib2, cookielib,re,jsondef LoginRenren(url,t_cookie):cookie {"t": t_cookie}#cookie中的t需要到浏览器中去查cookie "".join(x "" cookie[x] ";" f…

IDEA将项目打包为指定class文件的jar

转自&#xff1a;https://blog.csdn.net/makang456/article/details/86699375 【背景】 公司最近要和某大公司合作&#xff0c;将本公司的产品提供给其它公司单独部署售卖&#xff0c;为了让产品中重要的服务具备防君子不防小人的作用&#xff0c;于是就写了一个单独的服务…

鼠标点击实现花瓣雨_每周实验 | 黄金雨

点击BNU化学学社快来关注我们吧&#xff01;倩西风染就丹砂。不比黄金雨&#xff0c;灿余霞。送幽梦&#xff0c;到仙家。背景介绍BACKGROUND在开始实验之前&#xff0c;我们先来看一种植物&#xff0c;阿勃勒。它是苏木科决明属的落叶大乔木&#xff0c;花朵是最重要的观赏特征…

Windows系统进程介绍

http://mtoou.info/smss-exe/转载于:https://www.cnblogs.com/Clingingboy/archive/2013/01/29/2882017.html