zoukankan      html  css  js  c++  java
  • 无限分类

    一、数据库

    他的pid是上级的id

    二、php

    //获取所有的数据
    $pdo = new PDO("mysql:host=localhost;dbname=lamp108",'root','');
    $pdo->query("SET NAMES GBK");
    $stmt = $pdo->query("select * from cate2");
    $data = $stmt->fetchAll(2);   //直接从里面拿出来放这了
    
    //整理
    //要对data进行整理,首先把$data写里面
    function getcate4($data,$pid = 0,$level=0){
    $level++;
    $cateArr = array();  //写个数组
    //遍历$data里面的数据
    foreach($data as $v){
        if($v['pid'] == $pid){        //把当前父id下的分类存到$cateArr中
            $v['level'] = $level;  //把深度(层数)一起存到$cateArr中
            $cateArr[] = $v;
            
            //查看这个分类 是否有 子分类  如果有继续加入到 $cateArr
            $cateArr = array_merge($cateArr,getcate4($data,$v['id'],$level));
                                                            //把他的id当作下次的父ID去查询
        }
    }
    ////返回当前的分类数据
    return $cateArr;
    }
    
    $getArr = getcate4($data,9);  //默认传0 从跟开始   传个9 女装分类就出来了(查询)
    foreach($getArr as $v){
        echo str_repeat('|&nbsp;',$v['level']).'|-'.$v['name'].'<br />';
    }

    三、效果

     | |-家电
    | | |-生活电器
    | | | |-电风扇
    | | | |-空调
    | | |-厨房电器
    | | | |-电饭煲
    | | | |-煮蛋器
    | |-服装
    | | |-女装
    | | | |-T恤
    | | | | |-长袖
    | | | | |-短袖
    | | | | | |-红色短袖
    | | |-男装
    | | | |-T恤

    =================================

     第二部分  操作

    查询(直接在里面输入个9就行了)

    修改到其他分类(把厨房电器的PID修改成9 就跑到女装下面了)

    //update cate2 set pid = '9' where id = '3';

    增加(增加的话,直接pid写成你想增加的那个的ID就行了)

    删除()

  • 相关阅读:
    ubuntu下常用的apt-get 命令参数
    探索equals()和hashCode()方法
    Java多线程编程核心技术
    线程的状态
    详解Java中的clone方法
    为什么String类是不可变的?
    深入理解final和static关键字
    彻底理解ThreadLocal
    反射消除String类对象的不可变特性
    进程和线程
  • 原文地址:https://www.cnblogs.com/rainblack/p/4738026.html
Copyright © 2011-2022 走看看