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

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

    <?php
    namespace HomeController;
    use ThinkController;
    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 去寻找 他的父亲,所以我们在WEBCommonCommon 目录下创建一个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>

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

    实现效果如下所示:

  • 相关阅读:
    iOS Provision 要点记录
    (FIFO)有名管道在无亲缘进程间的通信
    uuid Makefile share
    浅谈C语言中的联合体
    消息队列 进程通信
    onvif makefile without share
    共享内存 进程通信
    共享内存(非map) 进程通信
    消息队列 两个进程
    linux 进程通信
  • 原文地址:https://www.cnblogs.com/leigood/p/5433571.html
Copyright © 2011-2022 走看看