thinkphp调用二级栏目
我用thinkphp做的一个网页,我想调用一级栏目和二级栏目,二级栏目在一级栏目下显示,现在一级栏目都调用出来了,数据表foodcat表字段fcid(栏目id)fcnam...
我用thinkphp做的一个网页,我想调用一级栏目和二级栏目,二级栏目在一级栏目下显示,现在一级栏目都调用出来了,数据表foodcat 表字段 fcid(栏目id) fcname(栏目名称) fcsort(栏目排序)fsid(上级栏目)下面是我网页里写的代码,可以帮我看看哪里不对吗,只调出了一级栏目。
在基础函数库commom/common.php
function SidType($fsid){
$Data=M('Foodcat');
$where['fsid']=$fsid;
$list=$Data->where($where)->order('fcsort')->select();
return $list;
}
IndexAction.class.php
public function fenlei(){
$Data=M('Foodcat');
$list=$Data->where('fsid=0')->order('fcsort')->select();
$this->assign('list',$list);
dump($list);
$this->display();
}
模板header.html
<volist name="list" id="vo">
<li><a href="{:U('index/flist/','id='.$vo['fcid'])}">{$vo.fcname}</a></li>
<ul><volist name=":SidType($vo['fcid'])" id="vo">
<li>{$vo.fcname}</li>
</volist></ul>
</volist> 展开
在基础函数库commom/common.php
function SidType($fsid){
$Data=M('Foodcat');
$where['fsid']=$fsid;
$list=$Data->where($where)->order('fcsort')->select();
return $list;
}
IndexAction.class.php
public function fenlei(){
$Data=M('Foodcat');
$list=$Data->where('fsid=0')->order('fcsort')->select();
$this->assign('list',$list);
dump($list);
$this->display();
}
模板header.html
<volist name="list" id="vo">
<li><a href="{:U('index/flist/','id='.$vo['fcid'])}">{$vo.fcname}</a></li>
<ul><volist name=":SidType($vo['fcid'])" id="vo">
<li>{$vo.fcname}</li>
</volist></ul>
</volist> 展开
1个回答
展开全部
":SidType($vo['fcid'])"是什么鬼?你F12看看,这不是指向function SidType($fsid)的。。。{:function()}这里的function不能是类中的方法,你可以定义在common的function.php中。而且不能用return获取。
更多追问追答
追问
嗯 我定义在inc/Common/functions.php了,页面不输出了。
追答
不好意思,漏看了最后就乱说,你应该是少了大括号,想来是可以的
为表歉意,再送你一个方法,把 SidType方法放到dump那里这样写
foreach($list as $l){
$list2[]=$Data->where('fsid='.$l['fsid'])->order('fcsort')->select();
}
$this->assign('list2',$list2);
html里面
第二个volist改成
{$vo2.fcname}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询