手机
当前位置:查字典教程网 >编程开发 >php教程 >php实现面包屑导航例子分享
php实现面包屑导航例子分享
摘要:本实例讲解了php实现面包屑导航的方法,面包屑导航在项目非常实用,在此处就写一个这方面的实现。path表示所有的祖先id,fullpath表...

本实例讲解了php实现面包屑导航的方法,面包屑导航在项目非常实用,在此处就写一个这方面的实现。

php实现面包屑导航例子分享1

path表示所有的祖先id,fullpath表示所有的祖先id和本身id

-- -- 表的结构 `tp_likecate` -- CREATE TABLE IF NOT EXISTS `tp_likecate` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `catename` varchar(24) NOT NULL, `path` varchar(10) NOT NULL, `fullpath` varchar(20) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

数据

-- -- 转存表中的数据 `tp_likecate` -- INSERT INTO `tp_likecate` (`id`, `catename`, `path`, `fullpath`) VALUES (1, '手机', '', ',1'), (2, '功能手机', '1', '1,2'), (3, '老人手机', '1,2', '1,2,3'), (4, '儿童手机', '1,2', '1,2,4'), (5, '智能手机', '1', '1,5'), (6, 'android手机', '1,5', '1,5,6'), (7, 'IOS手机', '1,5', '1,5,7'), (8, 'WinPhoto手机', '1,5', '1,5,8');

数据库连接:

<?php $db_host = 'localhost'; $db_user = 'root'; $db_password = ''; $db_name = 'test'; $con = mysql_connect($db_host, $db_user, $db_password) or die(mysql_error()); mysql_select_db($db_name, $con) or die(mysql_error()); mysql_query('set names utf8') or die(mysql_error()); ?>

主函数:

function likecate($path='') { // concat() 连接字段 $sql = "select id,catename,path, concat(path,',',id) as fullpath from tp_likecate order by fullpath asc"; $res = mysql_query($sql); $result = array(); while($row=mysql_fetch_assoc($res)) { $deep = count(explode(',', trim($row['fullpath'], ','))); // explode字符串转换为数组 implode数组转换为字符串 $row['catename'] = @str_repeat('', $deep).'|--'.$row['catename']; $result[] = $row; } return $result; }

输出:

// 简单输出 $res = likecate(); echo "<select name='cate'>"; foreach($res as $key=>$val) { echo "<option>{$val['catename']}</option>"; } echo "</select>"; echo "<br />"; // 封装方法 function getPathCate($cateid) { $sql = "select *,concat(path, ',',id) fullpath from tp_likecate where id = $cateid"; $res = mysql_query($sql); $row = mysql_fetch_assoc($res); $ids = $row['fullpath']; $sql = "select * from tp_likecate where id in($ids) order by id asc"; $res = mysql_query($sql); $result = array(); while($row = mysql_fetch_assoc($res)) { $result[] = $row; } return $result; } // 加上了链接的参数 function displayCatePath($cateid,$link='cate.php?cid=') { // 也可以组装 $res = getPathCate($cateid); $str = ''; foreach($res as $k=>$v) { $str.= "<a href='{$link}{$v['id']}'>{$v['catename']}</a> > "; } return $str; } echo displayCatePath(4);

效果:

php实现面包屑导航例子分享2

以上就是php实现面包屑导航的详细步骤,希望对大家学习php程序设计有所帮助。

【php实现面包屑导航例子分享】相关文章:

php实现求相对时间函数

真正面向对象编程:PHP5.01发布

PHP的面向对象编程

php实现根据IP地址获取其所在省市的方法

php简单实现屏蔽指定ip段用户的访问

php实现简单的语法高亮函数实例分析

php实现CSV文件导入和导出方法

一个php作的文本留言本的例子(四)

php数组合并与拆分实例分析

php实现读取内存顺序号

精品推荐
分类导航