首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

php实现文章评论系统

最近工作中需要完成一个评论的功能,上网查找了几个评论系统的展示样式。最后参考“多说”和“畅言”等评论系统,自己使用PHP语言实现了一个简单的评论系统。...具体实现方案如下(在ThinkPHP框架上实现): 1、递归方式 优点:实现代码简单,而且如果评论的层级固定在5个层次一下的话,建议使用该种方法,这样前端通过这种数据结果实现简单。...缺点:如果评论的层级没有固定的话,前端将无法展示评论信息了,而且如果层级太多的话,将会极大的消耗内存,更要命的是每次递归都得查询数据库,性能将大大的降低。.../** * @param $arc_id 文章id * @param int $comm_id 评论id * @param array $result * @return array */...可以实现n层级的评论,前端也能很好的展示 缺点:代码稍微复杂,对于固定的层级评论,前端展示评论较为复杂。

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    eval长度限制绕过 && PHP5.6新特性

    昨天晚上 @roker 在小密圈里问了一个问题,就是eval(xxx),xxx长度限制为16个字符,而且不能用eval或assert,怎么执行命令。 我把他的叙述写成代码,大概如下: <?...PHP会认为N是一个常量,但我之前并没有定义这个常量,于是PHP就会把它转换成字符串'N';第二个参数是要写入的数据,a也被转换成字符串'a';第三个参数是flag,当flag=8的时候内容会追加在文件末尾...于是微博上 @买贴膜的 想出一个办法,每次向文件'N'中写入一个字母或数字,最后构成一个base64字符串,再包含的时候使用php://filter对base64进行解码即可。...变长参数是PHP5.6新引入的特性,文档在此: http://php.net/manual/zh/migration56.new-features.php 和Python中的**kwargs,类似,在PHP...POST /test.php?

    2.9K10

    php无限级分类实现评论及回复功能

    经常在各大论坛或新闻板块详情页面下边看到评论功能,当然不单单是直接发表评论内容那么简单,可以对别人的评论进行回复,别人又可以对你的回复再次评论或回复,如此反复,理论上可以说是没有休止,从技术角度分析很容易想到运用无限级分类技术存储数据...一、效果需求分析: 1.在头部可以直接发布一级评论,最新发表的评论显示在最上面,如下效果图 ? 2.对发表的评论可以回复,回复显示在上级评论下边,形成层级关系,如下效果图 ?...3.页面操作细节:点击某个评论的回复按钮时,显示回复文本输入框,同时其他评论的回复文本输入框消失,当再次点击该回复按钮时,该文本框消失 4.在最后一级评论(这里设置是第三级)关闭回复功能 5.即时显示评论总数...<html lang="en" <head <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" <title php...测试用数据 var replyswitch = $(this).attr("replyswitch");//获取回复开关锁属性 $.ajax({ type:"POST", url:"/index.php

    2.1K30

    ZBlog PHP无插件调用最新评论标题的方法

    如果我们在制作和设计ZBlog PHP主题的时候,自用主题其实并不需要多么自动化,只需要能实现功能即可。有些代码调用我们直接不需要做成模块,可以直接用代码嵌入在主题中直接调用。...包括前面有提到的调用随机文章(ZBlog PHP随机调用文章代码 任意调用站内文章),在这篇文章中再分享一个可以调用评论的代码。...','1')), array('comm_PostTime' => 'DESC'), 10, null); {/php} {foreach $comments as $comment} {php}$clpl...>{$comment.Author.Alias} 评论于...默认是10条评论,标题是60个字符,如果我们需要可以进行调整合适的。 本文出处:老蒋部落 » ZBlog PHP无插件调用最新评论标题的方法 | 欢迎分享

    63830

    RSA密钥长度、明文长度和密文长度

    本文介绍RSA加解密中必须考虑到的密钥长度、明文长度和密文长度问题,对第一次接触RSA的开发人员来说,RSA算是比较复杂的算法,天缘以后还会补充几篇RSA基础知识专题文章,用最简单最通俗的语言描述RSA...本文先只谈密钥长度、明文长度和密文长度的概念知识,RSA的理论及示例等以后再谈。提到密钥,我们不得不提到RSA的三个重要大数:公钥指数e、私钥指数d和模值n。...但我们说的“密钥长度”一般只是指模值的位长度。目前主流可选值:1024、2048、3072、4096... 2、模值主流长度是多少?...二、明文长度 网上有说明文长度小于等于密钥长度(Bytes)-11,这说法本身不太准确,会给人感觉RSA 1024只能加密117字节长度明文。...所以,RSA实际可加密的明文长度最大也是1024bits,但问题就来了: 如果小于这个长度怎么办?

    21.9K20

    PHP内核之旅-4.可变长度的字符串

    val[1]; 7 }; 变量 描述 1 gc 变量的引用计数信息,内存管理会用到 2 h harh code, 字符串通过Times33算法计算得到的 3 len 字符串的长度...注意: 1. zend_string = 引用计数 + 字符串hash code + 字符串长度 + 字符串内容。 2. 字符串val是一个可变数组,val[1]表示默认存放'\0' 字符串结束符。...字符串是这样存放的: val[0] = 't' val[1] = 'e' val[2] = 's' val[3] = 't' val[4] = '\0'  字符串结束符 参考资料: http://www.php-internals.com.../ PHP7内核剖析 作  者: Jackson0714 出  处:http://www.cnblogs.com/jackson0714/ 关于作者:专注于微软平台的项目开发...特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。

    87330

    PHP内核之旅-4.可变长度的字符串

    PHP 内核之旅系列 PHP内核之旅-1.生命周期 PHP内核之旅-2.SAPI中的Cli PHP内核之旅-3.变量 PHP内核之旅-4.字符串 一、字符串源码  zend_string 1 typedef...val[1]; 7 }; 变量 描述 1 gc 变量的引用计数信息,内存管理会用到 2 h harh code, 字符串通过Times33算法计算得到的 3 len 字符串的长度...注意: 1. zend_string = 引用计数 + 字符串hash code + 字符串长度 + 字符串内容。 2. 字符串val是一个可变数组,val[1]表示默认存放'\0' 字符串结束符。.../ PHP7内核剖析 作  者: Jackson0714 出  处:http://www.cnblogs.com/jackson0714/ 关于作者:专注于微软平台的项目开发...特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。

    1.1K60

    webservice最大长度_网址最大长度

    HTTP GET请求的最大长度是多少? 是否定义了一个响应错误,如果服务器收到超过此长度的GET请求,服务器可以/应该返回该错误?...至于客户端问题,HTTP 1.1规范甚至对此有所警告,这是第3.2.1章的摘录: 注意:服务器应谨慎使用255个字节以上的URI长度,因为某些较旧的客户端或代理实现可能无法正确支持这些长度。...因此,我们可以假定8KB是最大可能的长度,而2KB是在服务器端依赖的更合理的长度,并且255个字节是假定整个URL都将进入的最安全的长度。...---- #4楼 您在这里问两个独立的问题: HTTP GET请求的最大长度是多少? 如前所述,HTTP本身并未对请求长度施加任何硬编码的限制。...是否定义了一个响应错误,如果服务器收到超过此长度的GET请求,服务器可以/应该返回该错误? 那是没人回答的那个。

    3.2K40

    评论

    最后,这个评论是关联到某篇文章(Post)的,由于一个评论只能属于一篇文章,一篇文章可以有多个评论,是一对多的关系,因此这里我们使用了 ForeignKey。...created_time 记录用户发表评论的时间,我们肯定不希望用户在发表评论时还得自己手动填写评论发表时间,这个时间应该自动生成。 创建了数据库模型就要迁移数据库,迁移数据库的命令也在前面讲过。...当用户想要发表评论时,他找到我们给他展示的一个评论表单(我们已经看到在文章详情页的底部就有一个评论表单,你将看到表单呈现给我们的样子),然后根据表单的要求填写相应的数据。...,因为后面需要把评论和被评论的文章关联起来。...{% endfor %} 接下来尝试在详情页下的评论表单提交一些评论数据,可以看到详情页的评论列表处渲染了你提交的评论数据。

    3.1K60

    django之评论系统及多级评论

    最后,这个评论是关联到某篇文章(Post)的,由于一个评论只能属于一篇文章,一篇文章可以有多个评论,是一对多的关系,因此这里我们使用了 ForeignKey。...当用户想要发表评论时,他找到我们给他展示的一个评论表单(我们已经看到在文章详情页的底部就有一个评论表单,你将看到表单呈现给我们的样子),然后根据表单的要求填写相应的数据。...,因为后面需要把评论和被评论的文章关联起来。...{% endfor %} 接下来尝试在详情页下的评论表单提交一些评论数据,可以看到详情页的评论列表处渲染了你提交的评论数据。...https://www.zmrenwu.com/courses/django-blog-tutorial/materials/13/ 多级评论实例 需求分析 一般论坛中有评论和子评论,这样很容易就成了一个评论

    6.9K61

    WPJAM「评论增强插件」:支持评论点赞和评论置顶

    :「WPJAM 评论增强」插件。...后台评论管理 因为评论置顶的功能是针对单篇文章的评论才能置顶,所以我在 WordPress后台 「文章」菜单下,添加了「文章评论」子菜单: 在该界面,我把页面分成左右两块,左边首先显示文章列表,点击某篇文章即可显示该篇文章的评论列表...管理员添加评论 另外一个比较重要的功能是:管理员可以给一些文章添加一些评论来丰富文章的内容了,操作也非常简单,在后台的文章列表,点击「添加评论」按钮: 就会弹出管理员添加评论的界面: 按照要求输入平路用户的昵称...前台评论展示和点赞 前端界面无需更改任何代码,即可实现点赞,置顶评论的作者昵称前会显示置顶的图标,其他评论则按照点赞数排序。...评论增强 支持评论点赞,评论置顶和按照点赞数排序。 图片集 1. 给媒体创建个分类「图片集 | collection」 2. 图片分类限制为二级 3. 取消图片编辑入口 4. 附件页面直接图片链接。

    1.7K40

    javaweb项目连接MySQL数据库_php实现评论回复功能

    对于本项目,设计的是,既可以评论,也可以进行回复,评论和回复分开存储。在显示上,评论和回复显示的位置不同,回复相较于评论向右靠一些,这样,看起来比较舒适,当然也可以设置成其他的样式。...评论会显示评论者头像,回复不会。 评论的管理:后台系统应该具备基本的评论管理功能,比如:删除,折叠,优选,排序。...三、数据库表的设计: 本评论功能采用评论和回复分离的方式进行存储,一共设计了两张表,一张用户评论表(comment),一张针对评论的回复表(comment_reply)。...评论表主要保存对文章或者回答的评论,回复表保存对每一条评论的回复。...评论表(comment)如下图:主要包括了:评论ID(作为回复表的主键),回答(文章)ID,评论者ID,评论内容,点赞数,评论时间,审核状态 评论回复表(comment_reply)如下图:

    1.4K20

    WPJAM「评论增强插件」支持后台添加评论

    WPJAM「评论增强插件」新增后台添加评论功能,这样管理员也给一些文章添加一些评论来丰富文章的内容了,操作也非常简单,在后台的文章列表,点击「添加评论」按钮: 就会弹出管理员添加评论的界面: 按照要求输入平路用户的昵称...,上传头像,撰写评论内容,点击添加即可。...评论增强 支持评论点赞,评论置顶和按照点赞数排序。 图片集 1. 给媒体创建个分类「图片集 | collection」 2. 图片分类限制为二级 3. 取消图片编辑入口 4. 附件页面直接图片链接。...外部链接 将文章或评论中的外部链接加上安全提示的中间页。 让用户确认之后再跳转,并还支持添加 nofollow rel 属性。 话题标签 文章中插入 #话题标签#。

    1.1K20
    领券