本文实例讲述了php实现smarty模板无限极分类的方法。分享给大家供大家参考,具体如下:
<"localhost","admin","admin"); mysql_select_db("people_shop",$conn); mysql_query("SET NAMES 'UTF-8'"); $class_arr=array(); $sql = "select * from ecs_brand ORDER BY brand_id asc "; $query = mysql_query($sql); while($row = mysql_fetch_array($query)){ $class_arr[] = array($row['brand_id'],$row['brand_name'],$row['parent_id'],$row['sort_order']); } function dafenglei_select($m,$id,$index) { global $class_arr; global $str; $n = str_repeat(" ",$m); // $n = $m; for($i=0;$i<count($class_arr);$i++){ if($class_arr[$i]['2']==$id){ if($class_arr[$i]['0']==$index){ $str.= "<option value=\"".$class_arr[$i][0]."\" selected=\"selected\">".$n.$class_arr[$i][1]."</option>\n"; }else{ $str.= "<option value=\" ".$class_arr[$i][0]."\">".$n.$class_arr[$i][1]."</option>\n"; } dafenglei_select($m+1,$class_arr[$i][0],$index); } } return $str; } $aa = dafenglei_select(1,0,0); "parent_id"> <option value='0'>顶级分类</option> <"codetitle">复制代码 代码如下:$smarty->assign('wuxian_class',$aa);
在html页面加上这句就可以了<select name="parent_id"> <option value='0'>顶级分类</option> {$wuxian_class} </select>还有一个问题要注意 $str必须要是global行的,否则会有错误。
无限极分类的延伸:
我们可以写一个函数,每次调用这个函数的时候我们只需要传入这个数组及数据,就可以调用了,下面是我写的一个方法。
function dafenglei_select(& $arr=array(),$m,$id,$index) { // global $class_arr; global $str; $n = str_repeat(" ",$m); // $n = $m; for($i=0;$i<count($arr);$i++){ if($arr[$i]['2']==$id){ if($arr[$i]['0']==$index){ $str.= "<option value=\"".$arr[$i][0]."\" selected=\"selected\">".$n.$arr[$i][1]."</option>\n"; }else{ $str.= "<option value=\" ".$arr[$i][0]."\">".$n.$arr[$i][1]."</option>\n"; } dafenglei_select($arr,$m+1,$arr[$i][0],$index); } } return $str; }调用只需要这样就行了:
复制代码 代码如下:$aa = dafenglei_select($class_arr,0,0,0);希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com
暂无“php实现smarty模板无限极分类的方法”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。