我有一个列出所有食物来源的网站;在我的数据库中,我创建了一个名为[foods]
在我的页面中,当用户点击该类别时,他会获得所有孩子的列表。在我的情况下
food
-- Plants
---- Vegetable
------ Aubergine
------ Broad_bean
------ Broccoli
------ Carrot
---- Fruits
------ Apple
------ Apricot
------ Banana
------ Cherry
------ Clementine
------ Guava
-- Animals
现在,我想在页面顶部制作动态面包屑导航,例如
Food > Plants > Fruits > Banana
因此用户可以浏览它们。
我已经尝试过多次查询但没有运气。
每次我只获得该类别的第一个父母
因此,如果我在Banana
页面中,我只会获得Fruits
类别,而不会更深入。
我知道我必须使用while
循环where cat_parent_id != 0
,但我无法弄清楚如何以正确的方式实现它!
这是我尝试过的代码段
$cat_parent_id = $_REQUEST['cat_id'];
$q = mysqli_query($link, "SELECT * FROM foods WHERE cat_id = $cat_parent_id");
while($r = mysqli_fetch_assoc($q))
{
echo $name = $r['cat_name'];
}
我非常感谢你在这方面的帮助
提前致谢...
答案 0 :(得分:-1)
代表:
function show_breadcumb($cat_id)
{
$q = mysqli_query($link, "SELECT * FROM foods WHERE cat_id = $cat_id");
while($r = mysqli_fetch_assoc($q))
{
$name = $r['cat_name'];
$string.= $name .">".$string
}
//check if this category has any parent again call this fucntion
if( has parent ) { show_breadcumb($cat_id) }
else return $string;
}
表示你的ur循环应该继续查找类别到第一级。