夺命雷公狗ThinkPHP项目之----企业网站21之网站前台二级分类显示名称(TP自定义函数展示无限极分类)

我们实现网站二级分类的显示的时候,先要考虑的是直接取出顶级栏目,控制器代码如下所示:

<?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>

这样即可找到我们的二级分类下的数据了,如果是三级或者四级分类,如此类推即可实现。。。。

实现效果如下所示:

时间: 2024-12-25 16:23:03

夺命雷公狗ThinkPHP项目之----企业网站21之网站前台二级分类显示名称(TP自定义函数展示无限极分类)的相关文章

夺命雷公狗ThinkPHP项目之----企业网站1之快速搭建后台

我们还是老规矩照老方法,将框架里面多余的东西都干掉,然后在index.php里面将框架搭建起来 <?php //定义项目目录 define('APP_PATH','./WEB/'); //开启调试 define('APP_DEBUG',True); //包含thinkphp项目入口文件 require "Thinkphp/Thinkphp.php"; 然后进入WEB目录下,并复制一个Home然后改名为Admin 然后再Index控制器下进行操作 代码如下所示: <?php

夺命雷公狗ThinkPHP项目之----企业网站28之网站前台左侧导航的实现

我们基于刚才在model层的找顶级分类的代码在进行修改即可: <?php namespace Home\Controller; use Think\Controller; class CommonController extends Controller { function __construct(){ //继承父类的构造方法,所以网站在执行的时候会先执行他 parent::__construct(); //头部二级分类的显示 开始 $mod = M("Category");

夺命雷公狗ThinkPHP项目之----企业网站4之数据库连接

我们众所周知,我们在开发的时候网站是需要连接上我们的数据库的,毕竟数据库是网站的最核心之一嘛,废话不多说直接开干.... 我们先找到:config.php文件对她进行修改,因为我们网站前后台都用到数据库,所以我们直接在yao\WEB\Common\Conf下找到config.php前后台共享的文件里面修改下数据库配置即可.. 代码如下所示: <?php return array( //'配置项'=>'配置值' //系统中允许访问的模块(前后台) 'MODULE_ALLOW_LIST' =>

夺命雷公狗ThinkPHP项目之----企业网站26之网站前台列表页的显示和完成分页功能

我们用大I接收到我们get过来的栏目页的id然后通过文章的ar_cateid 来判断是不是属于该栏目下的,如果文章表ar_cateid = 栏目表的cate_id 那么就可以选出我们要查找的信息, 然后再遍历到视图即可... <?php namespace Home\Controller; use Think\Controller; class ListsController extends CommonController { public function lists(){ //获取栏目的i

夺命雷公狗ThinkPHP项目之----企业网站27之网站前台单页的完成(从百度编辑器里面取出文章数据)

我们的单页面里主要是为了可以取出文章分类表的栏目内容,废话先不说, 我们的实现要点: 1...获取get过来的栏目cate_id 2...然后用条件查询栏目表 <?php namespace Home\Controller; use Think\Controller; class PageController extends CommonController { public function page(){ $catid = I('cate_id'); $mod = D("Categor

夺命雷公狗ThinkPHP项目之----企业网站20之网站前台头尾分离

我们的网站直接让他头尾进行分离即可: 然后在代码里面找到id 为header的这段代码: 然后将整个div的内容都给弄出来,然后在view里面创建一个Public的目录,然后在创建一个header.html的文件,将这段代码直接给放进去即可... 然后再会到我们首页的index.html页面下用tp为我们准备好的标签对她引入即可: 然后我们回到浏览器里面测试以下,即可发现测试已经成功了:

夺命雷公狗ThinkPHP项目之----企业网站22之网站前台中间层(解决代码冗余)

我们如果这样写代码虽然可以实现头部二级分类的显示,但是如果再别的控制器下那么会出现显示不了.. 如果再加多一段一样的代码也可以实现出一样的效果: 但是这样会导致代码冗余现象,所以我们为了解决这个问题,可以通过一个中间层来处理,所以我们创建一个CommonController.class.php的控制器来实现解决代码冗余的一部分问题: <?php namespace Home\Controller; use Think\Controller; class CommonController exte

夺命雷公狗ThinkPHP项目之----企业网站17之网站配置页的添加

为了网站可以智能一点,所以我们开始来写一个网站配置的功能.. 所以我来写他的数据表: 先来完成他的添加功能,页面效果如下所示: lists.html代码如下所示: <!doctype html> <html> <head> <meta charset="UTF-8"> <title>后台管理</title> <link rel="stylesheet" type="text/cs

夺命雷公狗ThinkPHP项目之----企业网站18之网站配置列表页的完成

我们点击下配置列表即可查看我们列表页的配置信息了: 其实这个最简单了,首先我们先来完成他控制器的代码: public function lists(){ $mod = M('Conf')->select(); $this -> assign('mod',$mod); $this -> display(); } 查找到了,后我们直接到列表页进行遍历数据即可: <!doctype html> <html> <head> <meta charset=&