PHP获取当前位置

  如果想动态的获取当前栏目所处的位置,就要关联到数据库,下面是例子:

  栏目表(category):

            

  涉及到二级目录。

  (1)首先在你的首页导航栏,还有首页所出现的链接后面,为栏目加上catid,就像这样: 。

      当然,子页公用的导航栏也是要加上的。

  (2)然后在控制器里面获取数据。           

      /* 当前位置 */

      $cat_id = $_GET['catid'];

      $cat = M("category"); //实例化category

      $data = $cat->where('cat_id='.$cat_id)->find(); //在category表中查找数据

      if($data['parent_id']){  //判断当前栏目是否有父级栏目

        $parent_data = $cat->where('cat_id='.$data['parent_id'])->find(); //如果有,查找父级栏目cat_id

      }

      if($parent_data){ //判断父级栏目是否有cat_name

        $this->assign('parent', $parent_data); //如果有,将值赋给parent变量

      }else{

        $this->assign('parent', ''); //如果没有,将空值赋给parent变量

      }

      $this->assign('cat',$data); //将以上所获取到的值赋给cat变量

      /* END 当前位置 */

   (3)新建一个公用HTML文件在Common里,命名为currentPosition.html,内容如下:

      

       (4)在需要显示当前栏目的地方引用currentPosition.html即可:

      <include file="Common/Common/currentPosition.html" />

 最终的打印结果为:

    ① 没有父级栏目:

         

    ②    有父级栏目:

         

当然这一切是建立在连接到数据库的情况下。

当前位置算是获取了,但是要是想给当前栏目的父级栏目添加链接,就要给category表添加一个新的字段:

然后修改一下控制器内容,在里面添加几句:

在currentPosition.htm里面调用:

这时候如果有父级栏目就会输出父级栏目然后在后面加个 “>”,如果没有父级栏目就输出空。

最终的打印结果为:

    ① 没有父级栏目:

         

    ②    有父级栏目:

         

原文地址:https://www.cnblogs.com/Man-Dream-Necessary/p/5646557.html