经常在各大论坛或新闻板块详情页面下边看到评论功能,当然不单单是直接发表评论内容那么简单,可以对别人的评论进行回复,别人又可以对你的回复再次评论或回复,如此反复,理论上可以说是没有休止,从技术角度分析很容易想到运用无限级分类技术存储数据...,运用递归获取评论层级结构数据,运用ajax实现评论页面交互,这里用thinkphp框架做个简单的demo练练手,为了简化流程这里第三级评论开始停止回复,当然只要在这个基础上稍作修改就可以实现无限回复功能...3.页面操作细节:点击某个评论的回复按钮时,显示回复文本输入框,同时其他评论的回复文本输入框消失,当再次点击该回复按钮时,该文本框消失 4.在最后一级评论(这里设置是第三级)关闭回复功能 5.即时显示评论总数...无限级分类实战————评论及回复功能</title <link rel="stylesheet" type="text/css" href="/Public/css/comment.css" rel=...--三级评论end-- </li </volist </ul
php header("Content-type: text/html; charset=utf-8"); //header("Content-Type: text/plain;charset=utf..."; tree($list,$v["id"]); echo ""; } } echo ""; } //首先把所有的数据取出来,从第一级开始
摘要 在实际项目中经常要用到无限级分类,如多级分类、导航表等。PHP 实现无限级分类通常有两种实现方式,一种是利用path字段(pid+id)标识当前层级;另一种是利用递归循环pid的方式。...PHP 实现无限级分类 – path标识 1、数据库设计 --创建分类表 create table `b_category`( `id` int primary key not null auto_increment...`cat_description` text default '', `level` int not null default 0 comment '等级', `pid` int comment '父级id...', `path` varchar(10) comment 'pid+,+id标识,用于无限级分类' ); 2、PHP 代码实现 $data = $m->field("*, concat(path,'
下面的讲解我用的是ThinkPHP框架,与PHP用法是一样的。...ASC,id ASC //这里的排序是至关重要的 Step 3、查询出的结果是一个常规的二维数组,如下图: ps:pid就是parent_id,这里是举个例子,下文一样 Step 4、封装的无限级分类数组处理函数...: /** * 无限级分类 * * @access public * @param Array $data * //数据库里获取的结果集... * @param Int $count * //第几级分类 * @return Array $treeList */ // 存放无限分类结果如果一页面有多个无限分类可以使用...,这个函数是我从互联网上看到借鉴的,进行了一些修改,希望能够帮助大家解决工作或者学习中遇到的困难,不管是PHP还是thinkphp,用法其实一样,如果此文存在错或者有不懂的地方,可以在下方评论栏留言,我将为您解答
一、摘要 拓展 django 官方的评论库,为评论提供无限层级的支持。...点击测试,进入评论页面 ? 输入表单数据,会跳转页面 http://example.com/posts/1#c1 重新访问首页,点击测试 在提交按钮下面,就会显示评论。 ?...再次返回首页,点击测试,评论效果如下: ? 点击2楼后面的reply,回复一下 ? 再次返回首页,点击测试,评论效果如下: ? 回复3楼 ? 4级评论如下: ? 还可以再次回复,这里就不演示了。...django_mptt_comments_mpttcomment 表记录了评论信息 ? templates 是模板目录,可以根据需要,将页面调整的好看一些。
相信很多学php的很多小伙伴都会尝试做一个网上商城作为提升自己技术的一种途径。各种对商品分类,商品名之类的操作应该是得心应手,那么就可以尝试下无限级分类列表的制作了。 什么是无限级分类?...无限级分类是一种分类技巧,例如部门组织,文章分类,学科分类等常用到无限级分类,将其简单理解成分类就好了。...分类无处不在,分类显得“无限”。我这里就不说无限分类的必要性了。 无限级分类原理简介 无限分类看似”高大上”,实际上原理是非常简单的 。无限分类不仅仅需要代码的巧妙性,也要依托数据库设计的合理性。...要满足无限级分类,数据库需要有两个必须的字段,id,pid。id用来标识自身,而pid则是用来表明父级id。也就是说,每个分类记录不仅描述了自身,还描述了与其关心最为紧密的另一个id。...php无限级分类是经常要用到的,本人以前一直用的是已经写好的,所以没仔细去研究过,下面是一个使用递归实现的简单的php无限级分类的函数;也许这不是最优的方法,但对于一般的应用也足够了。
♖背景 最近复习算法,在此对无限级分类的实现方法稍作整理,当然也是参考了道友的经验,目测适合实际的项目应用,当然,也有不少公司的笔试题还会涉及到呢,有何问题,欢迎各位道友指摘 … 操作环境:Win10...使用语言:PHP 使用框架:ThinkPHP 3.2.3 ♘前期准备 ①....首先,实现无限级分类的方式有: 以父ID设计,运用递归实现的方式 以全路径实现的无限分类方式 ②....♗代码实现 此处,讲解几个核心方法,完整代码可根据后面的附录进行下载参考,请注意此处提及的核心处理代码都在文件ZmModel.class.php 中 ①....deepCatesForDown(0,6); $this->assign('cateListDown',$cateListDown); $this->display(); 前端Html数据显示参考: 递归方式获取 无限级分类数据
无限级分类数据 ---- 本文章中的算法使用的都是以下数据 站长源码网 $array = [ 2....使用引用算法转为无限级分类树 ---- $data = getTree($data); /** 收藏 | 0点赞 | 0打赏
php /** +------------------------------------------------ 通用的树型类 +---------------------------------...ret = ''; /** 构造函数,初始化类 @param array 2维数组,例如: array( 1 => array('id'=>'1','parentid'=>0,'name'=>'一级栏目一...'), 2 => array('id'=>'2','parentid'=>0,'name'=>'一级栏目二'), 3 => array('id'=>'3','parentid'=>1,'name'=>'...二级栏目一'), 4 => array('id'=>'4','parentid'=>1,'name'=>'二级栏目二'), 5 => array('id'=>'5','parentid'=>2,'name...'=>'二级栏目三'), 6 => array('id'=>'6','parentid'=>3,'name'=>'三级栏目一'), 7 => array('id'=>'7','parentid'=>3,
导语 在开发中我们经常会遇到:导航菜单、部门菜单、权限树、评论等功能。 这些功能都有共同的特点: 有父子关系 可无限递归 以导航菜单为例, 将导航菜单设置为动态的, 即从动态加载菜单数据。...,另一方面可以用作父级,子级来定义该父级ID,这样就可以设计无限级菜单,这样设计好处是可以父子级别菜单同表存储,便于遍历显示,但是存储在表中的数据只有对应逻辑,不好在数据库中维护及查看,需要写一下算法进行可视化遍历...+版本,低版本不支持,我将此函数放在此处: /** * PHP5.5+ array_column函数 * @param null $input * @param null $columnKey...number of // parameters and trigger errors exactly as the built-in array_column() // does in PHP...$tree[] = &$items[$item['id']]; } } return $tree; } 结语 无限级菜单
//id作为索引,pid 为父索引 function tree(&$list,$pid=0){ $tree=[]; for...
无限级分类是很常见的功能,算法的好坏对于获取分类树的性能起到决定性的作用。...尤其当分类数据和层级多时,一个糟糕的算法将使服务器不堪重负 以下用laravel实现无限级分类功能,包括: 数据表设计 填充模拟数据 生成分类树 分类树的后台维护 数据表设计 字段名 描述 id 主键id...name 类目名称 parent_id 父类目 ID is_directory 是否拥有子类目 level 当前类目层级 path 该类目所有父类目 id 为什么要用level与path 无限级分类中...artisan migrate 填充模拟数据 调整模型类app/Models/Category.php代码: <?...createCategory 方法 $this->createCategory($child, $category); // $category 为刚创建的类目,作为子类目的父级类目参数
-- 最后一级 --> {{item.menuName}}</el-menu-item
最近工作中需要完成一个评论的功能,上网查找了几个评论系统的展示样式。最后参考“多说”和“畅言”等评论系统,自己使用PHP语言实现了一个简单的评论系统。...具体实现方案如下(在ThinkPHP框架上实现): 1、递归方式 优点:实现代码简单,而且如果评论的层级固定在5个层次一下的话,建议使用该种方法,这样前端通过这种数据结果实现简单。...缺点:如果评论的层级没有固定的话,前端将无法展示评论信息了,而且如果层级太多的话,将会极大的消耗内存,更要命的是每次递归都得查询数据库,性能将大大的降低。.../** * @param $arc_id 文章id * @param int $comm_id 评论id * @param array $result * @return array */...可以实现n层级的评论,前端也能很好的展示 缺点:代码稍微复杂,对于固定的层级评论,前端展示评论较为复杂。
导读:说到无限极分类,这个在程序中是常见的一个功能点了。实现的方式也有很多种,今天着重分享一下涉及到数据库的无线分类,可以使用递归处理,也可以使用循环查询数据库处理。..., 0, 'icons/18.gif'), (3, 0, '生活点滴', '记录生活点滴', 0, 'icons/2.gif'), (6, 0, '栀子花开', '青春无限', 0, 'icons/8....', 'php学习', 0, 'icons/18.gif'), (11, 10, 'php基础知识', 'php基础知识', 0, 'icons/1.gif'), (12, 10, 'oop', 'oop...', 0, 'icons/1.gif'), (13, 10, 'php安全', '讲述php安全', 0, 'icons/1.gif'), (14, 10, 'seagull framework', '...php // 这里为了篇幅就不展现运行效果,这段代码确保是可以正常运行的。 直接使用即可。下面分享自己使用该demo实现的。
效果预览 先来看垂直方向无限级菜单目录 ? 再来看水平方向无限级菜单目录: ?...总结 本文给出了无限层级菜单的终极方案。该方案可以支持大型系统的构建。 赶快动手试试吧。
解释核心:顶级分类0下面可以有无限个子类。这就叫无限极分类。简介来说就是中国:大的范围下>>的小范围:海南吧。...想这张图一样,核心在于,从顶级分类pid=0开始起,顶级分类中的id是找到所有的相同的pid为子类,然后这些子类的id又会找到下一层级的pid(顶级分类pid=0除外,因为他上面已经没有id了)。...php $db_host="localhost"; $db_user="root"; $db_password=""; $db_name="book"; $link=mysql_connect($db_host...-- https://www.phpmyadmin.net/ -- -- 主机: localhost -- 生成日期: 2021-12-04 22:20:26 -- 服务器版本: 5.7.26 -- PHP
首先声明一下,我们采用递归的方式来实现无限分类。但无限分类的实现,不是只是递归一种方式,还有一种是全路径方式,也可以实现,不过,这种方式通常用在全路径导航菜单中。...所以,这里我们还是用最常见的递归函数来实现:无限分类。...php namespace app\admin\model; use think\Collection; use think\Model; class Category extends Model...$cate_name; //3-2将查询到的当前记录保存到结果$result中 $result[] = $value; //3-3关键:将当前记录的id,做为下一级分类的父id
其实美国PHP主机不限制流量或者不限制存储空间的做法很早就已经有过,比如我们早年熟悉的Bluehost、JustHost等主机商几年来一直是卖一款无限型(unlimited)虚拟主机,包括存储空间,每月的流量都不限制...海外主机商那时候比较侧重于一个商家就一个方案套餐,就是上面提到的unlimited无限型。当这个时候,我们看到无限制型的主机,肯定会优于选择,且那时候感觉使用国外主机速度也还不错。...当然,目前随着云服务器的趋势,有些主机商关闭或者有些主机商也开始从原来的单一无限方案添加到多个方案,包括基础方案也是有建站数量和硬件限制大小的。但是,我们还是可以看到有些商家提供无限空间。...尤其是Linux系统的美国PHP空间居多。 第二、是否真正的不限制 从配置介绍看,肯定是没有错的。...所以,对于不限制、无限型的美国PHP主机,或者其他地区的虚拟主机也罢,都是相对性的。
简单模仿了一个评论模板,当然肯定是没有博客的 valine 这么强大的 hhhh, PHP 表单安全性的重要提示 $_SERVER["PHP_SELF"]变量能够被黑客利用!...php echo htmlspecialchars($_SERVER['PHP_SELF']);?...php echo $name;?>"> * "> * 评论:<?php echo $comment;?
领取专属 10元无门槛券
手把手带您无忧上云