最近在做一个项目,是要修获取分类的,这个可就难为死我了,大家看下图吧!条件是:知道 三级别分类的type_id = 64最后要得到的结果是:
 顶级分类一-》二级别分类-》三级别分类
 

解决方案 »

  1.   

    $s = $this->Marticle_typeModel->getOneById($ArticleRs[type_id]);//文章所属分类
    复制代码我来说明下我的这个方法,$ArticleRs[type_id])就是type_id,假设他是64getOneById()方法就是获取一条数据,查询type_id等于64的信息,读取出来请问如何得到结果是这样的文字呢:
    顶级分类一-》二级别分类-》三级别分类(64) 
      

  2.   

    这个很简单
    做个递归,如果parent_id!=0
    继续上查
      

  3.   

    这种结合设计的的确很烦琐,
    lz看看这个sql
    select
    *
    from
    分类表 top
    , 分类表 mid
    , 分类表 bot
    where
    -- 确定表关系
    bot.parent_id = mid.type_id
    and mid.parent_id = top.type_id
    -- 确定顶部分类特征
    and top.parent_id = '0'
      

  4.   

    先找一級分類,再由一級分類的ID找二級分類,由二級分類ID找三級分類
      

  5.   


    $array = array();
    find_parent($array, 64);
    function find_parent(&$parent_array, $id) {
    $sql = mysql_query("select * from TABLE where type_id ='" . $id . "'");
    if(mysql_numrows($sql) > 0) {
    while ($get_parent = mysql_fetch_array($sql)) 
    echo $get_parent['parent_id'];
    find_parent($parent_array, $get_parent['parent_id']);
    }
    }
    大概的思路是这样,没测试过~~
      

  6.   

    循环查找,直到parent_id为0建议添加一个层次的字段 level
    这样很方便统计查询每次都循环查找效率很低