zoukankan      html  css  js  c++  java
  • 后台无限级分类添加的实现方式

    1.数据库设计添加字段父级分类ID号parent_id和path路径,0代表为根分类(一级分类),一个‘_’代表二级分类: 
    这里写图片描述

    2.添加分类模板修改为选择父级分类名: 
    这里写图片描述
    模板中添加parent_id提交,如下:

        <tr>
            <th width="120"><i class="require-red">*</i>上级分类:</th>
            <td>
                 <select name="parent_id" class="required">
                    <option value="">请选择</option>
                  <!--还未做非空验证-->
                  <foreach name='cateList' item='val'>
                   <option value="{$val.cate_id}">{:str_repeat('&nbsp;',substr_count($val['path'],'_')*4)}{$val.cate_name}</option>
                 </foreach>
               </select>
          </td>                                
    </tr>

    3.后台接收进行查询,拼接parent_id的组成path,然后进行数据入库;

        /*分类添加方法
          author:ren
          return:void
        */
        public function add(){
            //如果POST了提交则入库
            if(IS_POST){
                $data=I('post.');
                // 若没设置父级,则自动识别为根分类
                if(empty($data['parent_id'])){
                    $data['path']=0;
                }else{
                    //查询父级ID的path字段值
                    $parentPath=M('category')->where("cate_id='$data[parent_id]'")->getField('path');
                    //拼接添加分类的path值
                    $data['path']=$parentPath.'_'.$data['parent_id'];                
                }
    
                $result=M('category')->add($data); 
                if($result){
                    $this->success('添加成功!',U('Category/index'));
                }else{
                    $this->error("添加出错...");
                }
            }else{
            //没提交动作则正常显示分类添加模板  
                $cateList=D('category')->getCategoryTree();
                $this->assign('cateList',$cateList);
                $this->display();                      
            }
        }
  • 相关阅读:
    【资源分享】一个匿名文件分享网站
    【C语言】指针到底有什么用
    【C语言】一招搞定C语言各种复杂指针
    【资源分享】Visual Studio全版本在线安装包(5MB)
    【资源分享】C语言也能干大事(第二版)
    【资源分享】迅雷
    Nuxt spa deploy
    nginx ssl docker
    Linux查看环境变量
    Nginx 配置
  • 原文地址:https://www.cnblogs.com/phpzlq/p/9075433.html
Copyright © 2011-2022 走看看