夺命雷公狗ThinkPHP项目之----企业网站21之网站前台二级分类显示名称(TP自定义函数展示无限极分类)
2024-08-25 09:51:56
我们实现网站二级分类的显示的时候,先要考虑的是直接取出顶级栏目,控制器代码如下所示:
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
$mod = M("Category");
$where['cate_pid'] = '0';
//这样写可以达到一种防SQL注入的效果
$cate = $mod -> where($where) -> select(); //获取顶级栏目为0的结果集
$this -> assign('cate',$cate);
//dump($cate);
$this->display();
}
}
因为我们的顶级栏目的 cate_id 为 0 ,所以我们直接取出所有栏目 cate_id=0 的栏目然后遍历到模版页离去:
这样我们即可实现一级栏目的展示了:
下一步就是考虑的就是通过我们目前找到的cate_pid 去寻找 他的父亲,所以我们在WEB\Common\Common 目录下创建一个function.php的函数文件,来寻找我们的亲爹咯,嘻嘻:
代码如下所示:
<?php
//取出子栏目
function getsub($pid){
$mod = D("Category");
$where['cate_pid'] = $pid;
$cmod = $mod -> where($where) -> select();
return $cmod;
}
我们在函数里面接收到传进来的 id 去按照条找cate_pid = 我们传进来的id 的数据,然后在用return 进行返回即可。。。。。。
下一步直接在模型下引入我们的函数:
<div id="header">
<div class="layout"> <div id="nav">
<div class="nav">
<ul>
<li><a href="/" class="header foucs">
<p>网站首页</p>
<p class="en">Home</p>
</a>
</li>
<volist name="cate" id="vo">
<li class="mnav">
<a href="/plus/list.php?tid=1" class=''><p>{$vo['cate_name']}</p><p class='en'>{$vo['cate_ename']}</p></a> <ul class="smenu">
<volist name=":getsub($vo['cate_id'])" id="vv">
<li>
<a href="/plus/list.php?tid=11">{$vv['cate_name']}</a>
</li>
</volist>
</ul> </li>
</volist>
</ul>
</div>
</div>
<div class="logo">
<a href="/"></a>
</div>
</div>
</div>
这样即可找到我们的二级分类下的数据了,如果是三级或者四级分类,如此类推即可实现。。。。
实现效果如下所示:
最新文章
- 读取properties配置文件的方法
- js正则获取url所带参数值
- 3.Java网络编程之IP
- [Google Guava]字符串处理:连接器、拆分器、字符匹配器
- 软件开发学习笔记 <;一>; UML
- HDFS的运行原理
- iOS 为类添加Xib里面配置的view
- svg学习(三)rect
- Beautyacticle
- wpa_cli调试工具的使用
- 【转】android新建项目时 出现appcompat_v7工程错误和红色感叹号
- 宣布正式发布 Windows Azure 移动服务、网站及持续的服务创新
- 多线程面试题系列(2): CreateThread与_beginthreadex本质区别
- label+input实现开关切换效果
- BZOJ 4129: Haruna’s Breakfast [树上莫队 分块]
- php 制作圆形图片
- MYSQL的group by笔记
- Ubuntu安装MongoDB
- jdk安装环境变量配置
- 字符串匹配 - sunday算法