doudichu1358 2015-01-29 16:49
浏览 29
已采纳

如何修改代码类别ul li这些代码?

function display_children_category($parent, $level) { 
    $db = new My_sqli();    
    $result ="SELECT parent.product_category_id, parent.product_category_name, parent.product_category_level, count(product.product_name) AS sum_products FROM product_category AS node JOIN product_category AS parent ON node.product_category_lft BETWEEN parent.product_category_lft AND parent.product_category_rgt LEFT JOIN product ON node.product_category_id = product.product_category_id WHERE parent.product_category_parent='$parent' GROUP BY parent.product_category_name, parent.product_category_level ORDER BY node.product_category_lft";

    // display each child 
    $num = $db->get_results($result);

    foreach($num as $row){
             echo "<li>".str_repeat('',$level).$row['product_category_name']."( ".$row['sum_products']." ชิ้น)</li>"; 
             display_children_category($row['product_category_id'], $level+1); 
    }   

} 

How to modify code category ul li form these code? Please help me.

I would like category menu

<ul>  
    <li>test</li>  
    <li>test2</li>  
    <li>test3
        <ul>
            <li>subtest3-1</li>
            <li>subtest3-2</li>
        </ul> 
    </li> 
</ul>
  • 写回答

1条回答 默认 最新

  • dongxi8993 2015-01-29 16:58
    关注

    Do not echo directly, instead go with a string containing your li

    function display_children_category($parent, $level) { 
        $db = new My_sqli();    
        $result ="SELECT parent.product_category_id, parent.product_category_name, parent.product_category_level, count(product.product_name) AS sum_products FROM product_category AS node JOIN product_category AS parent ON node.product_category_lft BETWEEN parent.product_category_lft AND parent.product_category_rgt LEFT JOIN product ON node.product_category_id = product.product_category_id WHERE parent.product_category_parent='$parent' GROUP BY parent.product_category_name, parent.product_category_level ORDER BY node.product_category_lft";
    
        // display each child 
        $num = $db->get_results($result);
        $str = '';
    
        foreach($num as $row){
                 $str .= "<li>".str_repeat('',$level).$row['product_category_name']."( ".$row['sum_products']." ชิ้น)"; 
                 $str .= display_children_category($row['product_category_id'], $level+1); 
                 $str .= "</li>";
        }
    
        return ($str) ? "<ul>".$str."</ul>" : "";
    
    
    } 
    

    Then when you call the function in your outside script :

    echo display_children_category($param1,$param2); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。