分享
  • 收藏
  • 举报
    X
    @admin 针对你新的get_sort
    638
    6


    这个是我的分类  我在20 的地方 直接加载出 23  也就是在23下去找

    然后我打印sql

    我们可以明显发现 缺少一部分


    二我改成了现在这样 也就是7级

    sql语句查询的ID则发生了变化  他默认查询的依旧是最多那一个级别的分类

    6
    赏礼
    赏钱
    收藏
    点击回复
        全部留言
    • 6
    0 赏钱 赏礼回复
    • admin 超级管理员 消费:3.03元 2018-09-18 09:54 09:546楼

      把你的qb_cms_sort导出来.我们测试一下.

      1stFreddy 消费:0元 2018-09-18 10:01
      我刚给随风传过去了 他也测试了 结果问题更尴尬 = =
    0 赏钱 赏礼回复
    • admin 超级管理员 消费:3.03元 2018-09-18 09:40 09:406楼

      升级过的了 

      elseif($_type=='sons'){  //所有下一级级栏目,也包括自身,一般用在查询数据库
                      $s_array = [
                              $id => $field=='name' ? $array[$id]['name'] : $id,
                      ];
                      $_pid = $_pid2 = $_pid3 = 0;
                      foreach($array AS $key=>$rs){
                          if(!$rs['pid'])continue;
                          //$rs['pid']==$id 仅仅第一层直属下级, $rs['pid']==$_pid 下级的下级 $rs['pid']==$_pid2 下级的兄弟 , $rs['pid']==$_pid3 又重新找回父级的兄弟
                          if($rs['pid']==$id||$rs['pid']==$_pid||$rs['pid']==$_pid2||$rs['pid']==$_pid3){
                              $s_array[$key] = $field=='name' ? $array[$key]['name'] : $key;                       
                              if ($rs['pid']!=$array[$id]['pid']) {
                                  $_pid2 = $rs['pid'];
                                  if($array[$_pid]['pid'] != $array[$key]['pid']){
                                      $_pid3 = $array[$_pid]['pid'];
                                  }
                              }
                              $_pid = $key;
                          }
                      }
                      return $s_array;
                  }


      1stFreddy 消费:0元 2018-09-18 09:44
      这个不对啊 老总  他少ID   你看 我生面截图的 他不查询37的子集以及ID为37那一级
    0 赏钱 赏礼回复
    更多回复
    恢复多功能编辑器
  • 3 1
  • 推荐内容
    扫一扫访问手机版
    请选择要切换的马甲:

     
    网页即时交流
    QQ咨询
    咨询热线
    020-28998648