文档章节

php 无限分类

Tony2015
 Tony2015
发布于 2015/04/28 09:21
字数 280
阅读 7
收藏 0
mysql
首先我们准备一张数据表class,记录商品分类信息。
表中有三个字段,id:分类编号,主键自增长;title:分类名称;pid:所属上级分类id。
CREATE TABLE IF NOT EXISTS `class` ( 
  `id` mediumint(6) NOT NULL AUTO_INCREMENT, 
  `title` varchar(30) NOT NULL, 
  `pid` mediumint(6) NOT NULL DEFAULT '0', 
  PRIMARY KEY (`id`) 
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;

<?php 
$conn = mysql_connect("localhost","root","123456");
if (!$conn)
  {
  die('Could not connect: ' . mysql_error());
  }
  mysql_select_db('test');
  mysql_query('set names utf8');
function get_str($id) {
    global $conn;
global $str;
    $sql = "select id,title from class where pid= $id";
//echo $sql;
    $result = mysql_query($sql,$conn); //查询pid的子类的分类 
    if($result && mysql_affected_rows()){ //如果有子类 
        $str .= ''; 
        while ($row = mysql_fetch_array($result)) { //循环记录集 
            $str .= "  " . $row['title'] . " "; //构建字符串 

            get_str($row['id']); //调用get_str(),将记录集中的id参数传入函数中,继续查询下级 
        } 
        $str .= ''; 
    } 
    return $str; 
}

echo get_str(0);

function get_array($id=0){
global $conn;
    $sql = "select id,title from class where pid= $id"; 
    $result = mysql_query($sql,$conn);//查询子类 
    $arr = array(); 
    if($result && mysql_affected_rows()){//如果有子类 
        while($rows=mysql_fetch_assoc($result)){ //循环记录集 
            $rows[' '] = get_array($rows['id']); //调用函数,传入参数,继续查询下级 
            $arr[] = $rows; //组合数组 
        } 
        return $arr; 
    } 
}
$list = get_array(0); //调用函数 
print_r($list); //输出数组 

echo json_encode($list); 


?>


© 著作权归作者所有

共有 人打赏支持
Tony2015
粉丝 1
博文 50
码字总数 28618
作品 0
杭州
程序员
PHP通过传引用的思想实现无限分类的方法

在我的Simpla中,用到了无限分类,使用了PHP的传引用思想实现无限分类的方法,可以完美展示类似这样的分类模式。 具体实现代码如下:如有错误或者更好的方法,希望可以相互交流。 id pid nam...

卖小女孩的小火柴
2015/10/13
106
0
【军哥谈CI框架】之无限分类类库的实现和应用

大家好,我是军哥,英文名:JayJun,一直想跟大伙交流一下学习和使用CI的心得和经验,最近也在用CI写一个在线书城项目,已经完成80%,其中有用到无限分类,关于无限分类,有许多的实现方式,今...

jayjun0805
2012/11/13
0
6
照片管理系统--W-Script

W-Script是一个基于PHP+MySQL搭建的开源的墙纸下载网站的建站程序。可以无限分类和分子类。可以对照片进行投票和评论,提供高级搜索功能,可以生成各种尺寸的缩略图。它也可以建立 CSS Gale...

匿名
2010/01/14
3.3K
4
php中常用的几种无限分类查询技术

数据库的设计无限分类之一 全路径无限分类 全路径无限分类的优点在于 不需要递归关键SQL语句是: $sql = 'select id,name,path,concat(path,"-",id) as fulpath from goods order by fulpath...

小麒麟的胡言乱语
2016/03/14
57
0
免费电商系统--123PHPSHOP

123PHPSHOP是以php+MySQL进行开发的电商系统软件。 123PHPSHOP是专门为中国的企业和开发人员量身打造的电商解决方案,我们采取了免费,开源和简单的策略,希望帮助我们的客户从人员招聘到二次...

123phpshop
2015/11/03
3.9K
0

没有更多内容

加载失败,请刷新页面

加载更多

帧动画(wifi信号动态动画)

准备六张wifi不同信号强度的素材图片,复制到drawable目录中 在drawable目录中新建frame文件,并编写代码 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"> ...

lanyu96
26分钟前
1
0
快速get到学习Linux操作系统的点

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能够运行主要的UNIX工具软件、网络协议和应用程序。它支持32位...

问题终结者
34分钟前
1
0
Django2 model操作数据库

1.将应用(如learn)添加到安装应用配置中 将我们新建的应用(learn)添加到 settings.py 中的 INSTALLED_APPS中,告诉Django有这么一个应用。 INSTALLED_APPS = [ 'django.contrib.ad...

MichaelShu
36分钟前
1
0
SpringBoot基础篇Bean之条件注入之注解使用

更多Spring文章,欢迎点击 一灰灰Blog-Spring专题 bean的条件注入,除了前面一篇博文中介绍的通过@Conditional注解配合Condition接口的实现之外,还提供了更多简化的注解使用方式,省略了自己...

小灰灰Blog
47分钟前
1
0
git clone 报错 Clone failed: Authentication failed for

新装了系统,git和phpstorm的配置全都没有了,重新安装了git和phpstorm 系统:windows10 代码托管平台:阿里云code 软件的安装不作赘述。 报错1 Could not read from remote repository 解决...

Marhal
48分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部