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里面调用:
这时候如果有父级栏目就会输出父级栏目然后在后面加个 “>”,如果没有父级栏目就输出空。
最终的打印结果为:
① 没有父级栏目:
② 有父级栏目:
PHP获取当前位置的更多相关文章
- Uwp Windows10获取设备位置(经纬度)
先在Package.appxmanifest中配置位置权限 2. 创建LocationManager类 using System; using System.Collections.Generic; ...
- js 如何在浏览器中获取当前位置的经纬度
这个有一定的误差哈,具体的误差是多少,有兴趣的朋友可以去测试下 直接上代码 index.html页面代码: <html> <head lang="en"> ...
- jq获取鼠标位置
jq获取鼠标位置 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- C++获取鼠标位置及全局检测鼠标行为
1.获取鼠标位置(在屏幕的位置) CPoint m_mouse; GetCursorPos(&m_mouse); 2. 屏幕转化为客户端(控件的相对位置)& 客户端位置转化为屏幕位置 ...
- android 获取当前位置
1. Android开发位置感知应用程序方式:1. GPS 定位 精确度高,仅适用于户外,严重消耗电量.如果手机内置GPS接受模块,即使手机处于信号盲区,依然可以获取位置信息. 2. NETW ...
- Selenium2学习-031-WebUI自动化实战实例-029-JavaScript 在 Selenium 自动化中的应用实例之四(获取元素位置和大小)
通过 JS 或 JQuery 获取到元素后,通过 offsetLeft.offsetTop.offsetWidth.offsetHeight 即可获得元素的位置和大小,非常的简单,直接上源码了,敬请参 ...
- jquery 获取鼠标位置
//获取鼠标位置 $(function(){ $('body').mousemove(function(e) { e = e || window.event; __xx = e.pageX || e. ...
- android EditText获取光标位置并安插字符删除字符
android EditText获取光标位置并插入字符删除字符1.获取光标位置int index = editText.getSelectionStart(); 2.在光标处插入字符int index ...
- Android EditText获取光标位置并插入字符删除字符
1.获取光标位置 int index = editText.getSelectionStart(); 2.在光标处插入字符 int index = editText.getSelectionStart ...
- Adobe Edge Animate –获取鼠标位置及跟随鼠标功能实现
Adobe Edge Animate –获取鼠标位置及跟随鼠标功能实现 版权声明: 本文版权属于 北京联友天下科技发展有限公司. 转载的时候请注明版权和原文地址. 在网络上浏览有关Edge相关问题的时 ...
随机推荐
- 79 umount-卸除目前挂在Linux目录中的文件系统
Linux umount命令用于卸除文件系统. umount可卸除目前挂在Linux目录中的文件系统. 语法 umount [-ahnrvV][-t <文件系统类型>][文件系统] 参数: ...
- spring的AOP
最近公司项目中需要添加一个日志记录功能,就是可以清楚的看到谁在什么时间做了什么事情,因为项目已经运行很长时间,这个最初没有开来进来,所以就用spring的面向切面编程来实现这个功能.在做的时候对spr ...
- JS数组转字符串和字符串转数组
主要用到以下两个函数 join();//将数组转换成字符串split();//将字符串转换成数组 <script type="text/javascript"> var ...
- Advanced Office Password Recovery安装后显示是英文版的
一些才开始接触Advanced Office Password Recovery(即AOPR)的朋友,在安装Advanced Office Password Recovery的时候可能发现Advanc ...
- IndentationError: unindent does not match any outer indentation level
[problem] 从别处copy过来的python代码经过自己改动后,运行出错 [解决过程] vim file :set list # cat -A file 也可以 可以看到9-12行的inde ...
- 面试题目——《CC150》线程与锁
package cc150.thread_lock; public class RunnableThreadExample implements Runnable{ public int count ...
- EF唯一索引
this.Property(p => p.Name) .IsRequired() .HasMaxLength()) .HasColumnAnnotation("Index", ...
- rpm---linux软件安装与管理
linux的安装命令选项太多,整理一下,方便后期查找. 汇总: install: rpm -ivh 包全名 安装 upgrade: rpm -Uvh 包全名 升级 erase: rpm -e 包名 删 ...
- 基于dom的xss漏洞原理
原文:http://www.anying.org/thread-36-1-1.html转载必须注明原文地址最近看到网络上很多人都在说XSS我就借着暗影这个平台发表下自己对这一块的一些认识.其实对于XS ...
- [Nhibernate]sqlite数据库基本使用
目录 写在前面 操作步骤 总结 写在前面 昨天有朋友问我在nhibernate中如何使用sqlite数据库,当时实在忙的不可开交,下周要去山西出差,实在没空,按我的说法使用sqlite跟使用sqlse ...