smarty中section嵌套循环

smarty中section嵌套循环  

2008-11-19 19:01:20|  分类: php |  标签: |字号大中小 订阅

在此```感谢网友"远方"的提示foreach取值 

  <select name="parentId" id="parentId">
          <option value="0">根分类</option>
    <{section name=big loop=$big}>
          <option value="<{$big[big].id}>"><{$big[big].type}></option>
     <{section name=small loop=$big[big].small}>
      <option value="<{$big[big].small[small].id}>">-<{$big[big].small[small].type}></option>
     <{/section}>
          <{/section}>
      </select>     

   $sqla="select * from ".$tabext."navigation where parentId=0";
   $allRecord=$db->getAllRecord($sqla);
    $classNameArray=array(); 
     foreach($allRecord as $v){
      $sqls="select * from ".$tabext."navigation where parentId=".$v['id'];
      $allRecords=$db->getAllRecord($sqls);
       $childNameArray=array();
       foreach($allRecords as $s){
        array_push($childNameArray,$s);
       }
       $v['small']=$childNameArray;
      array_push($classNameArray,$v);
     }
   $smarty->assign("big",$classNameArray);  

以下是根据没有用smarty程序风格的写法所写:

  <select name="ntype" id="ntype">
  <{section name=bigType loop=$bigType}>
    <option value="a"><{$bigType[bigType].type}></option>
    <{section name=smallType loop=smallType}>
     <option value="b"><{$smallType[smallType].type}></option>
      <{/section}>
   <{/section}>
  </select>   
+++++++++++++++++++++++++++++

   $sqla="select * from ".$tabext."navigation where parentId=0";
   $allRecord=$db->getAllRecord($sqla);
   
    for($i=0;$i<count($allRecord);$i++){
     $big[]=array("id"=>$allRecord[$i]['id'],"type"=>$allRecord[$i]['type']);
      $sqlb="select * from ".$tabext."navigation where parentId=".$allRecord[$i]['id'];
      $allRecords=$db->getAllRecord($sqlb);
       $countallRecords=count($allRecords);
        #debug($allRecords);
       if($countallRecords!=0){
        for($j=0;$j<countallRecords;$j++){
         $small[]=array("ids"=>$allRecords[$j]['id'],"types"=>$allRecords[$j]['type']);
         $smarty->assign('small',$small);
        }
     $smarty->assign('big',$big);
       } 
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值