机械类 找机械工程这样的。。能实现吗?大神们帮讲一下吧,说详细点谢谢了
机械类 找机械工程这样的。。能实现吗?大神们帮讲一下吧,说详细点谢谢了
先得到 0802;而后 mysql: select * from xxx where m_code like '0802__'; 如果是数据全部取出来在分类的话, 就是 id==pid 的地方相应的改为正则匹配 (不好递归啊。。不能从0开始)
首先你的这个表结构并不能够实现无线分类
解决办法:
再加一个字段,标识出当前记录到底是属于谁的子分类 如: mid m_name m_code fid 1 机械类 xxx 0 2 机械工程 xxxx 1 3 挖掘机 xxxx 2 4 机械工程1 xxx 1
fid就是标识着 父分类是谁。
实现方式是:select * from xxx where mid='$fid'
用递归去找父分类, 直到找不到父分类为止
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
0
你这样的朝设计,需要将数据取出来以后对 code 进行字符串处理才能知道这样数据的分类。相比之下增加一个 parentcode 之类的字段标识上级分类会更方便处理
本来写了不少,不过又都删掉了。你这个东西有bug,所以建议你采用传统设计吧,就是id, parent_id, path那种方式。
通常的path采用逗号分隔的形式,如 1, 13, 305,而你的思路貌似想用0作为分隔符,那么如果一个分类有超过9个子分类的时候,你怎么确定那个0是不是分隔符呢?除非你用9进制,但是这太麻烦了,还不如老老实实去做。或者你把m_code改成8-42-293这种形式,可是这又和path方式没什么区别。
另外,有很多时候我们不是不能减少数据表的字段,额外的字段往往是为了提升、优化搜索才定义的。比如你这种设计,我只想查出工学的子分类,而不是子分类树,查询怎么写?
如果不许用电,怎么保持冰箱工作?这和你的问题如出一辙,不是绝对不行,但是不符合通常的逻辑,或者代价高昂。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号