PHP开发分类技术之连接导航样式分类
本节我们将创建一个类似连接导航样式
例如: 图片>>汽车图片>>奔驰图片>>奔驰C260图片。
创建数据库和表前面的章节已经讲解,本节就不在具体说明
思路基本与前章节的下来菜单相同:
创建getCatePath函数,执行SQL语句查询id,通过查询出的id, 可以通过输入不同的id值来显示不同数量的导航。
通过自定义函数getCatePath用krsort函数逆向输出。
<?php
function getCatePath($cid, &$result = array()) {
global $link;
$sql="SELECT * FROM class where id = $cid";
$rs = mysqli_query($link,$sql);
$row = mysqli_fetch_assoc($rs);
if ($row) {
$result[] = $row;
getCatePath($row['pid'], $result);
}
krsort($result); //krsort对数组按键名逆向
return $result;
}
?>通过创建displayCatePath函数,用foreach循环输出并加上“>>”样式
<?php
header("content-type:text/html;charset=utf8");
$link = mysqli_connect('localhost','username','password','test');
mysqli_set_charset($link, "utf8");
if (!$link) {
die("连接失败:".mysqli_connect_error());
}
function getCatePath($cid, &$result = array()) {
global $link;
$sql="SELECT * FROM class where id = $cid";
$rs = mysqli_query($link,$sql);
$row = mysqli_fetch_assoc($rs);
if ($row) {
$result[] = $row;
getCatePath($row['pid'], $result);
}
krsort($result); //krsort对数组按键名逆向
return $result;
}
function displayCatePath($cid,$url='fen.php?cid=') { //fen.php为当前执行程序的PHP页面
$res = getCatePath($cid);
$str = '';
foreach ($res as $key => $val) {
$str.= "<a href={$url}{$val['id']}>>{$val['title']}</a>>";
}
return $str;
}
echo displayCatePath(7); //输出当前的id为7
?>
