php创建多级栏目_用PHP实现多级树型菜单

用PHP实现多级树型菜单

更新时间:2006年10月09日 00:00:00   作者:

//树型目录结构模板程序

//菜单目录库字段说明:

//menu_id 菜单项目 id

//menu 菜单名称

//menu_grade 菜单等级 1 为主菜单 2 为二级菜单 ........

//menu_superior 上一级菜单 id 号

function my_menu($menu_content,$i,$menu_grade_temp,$menu_superior_temp)

{

global $PHP_SELF;

$temp1=$menu_grade_temp+1;

$menu_superior_temp_array=split("/",$menu_superior_temp);

for ($t=0;$t

{

$menu_array=split("/",$menu_content[$t]);

If(($menu_array[2]==$menu_grade_temp)&&($menu_array[3]==$menu_superior_temp_array[$menu_grade_temp-1]))

{

for($p=1;$p<=$menu_grade_temp;$p++){echo "  ";}

$temp3=$menu_superior_temp_array;

$temp3[$menu_grade_temp]=$menu_array[0];

$temp2=implode("/",$temp3);

if ($menu_array[0]==$menu_superior_temp_array[$temp1-1])

{

$temp5=$temp1-1;

$temp3[$menu_grade_temp]="";

$temp6=implode("/",$temp3);

echo "$menu_array[1]
";

my_menu($menu_content,$i,$temp1,$temp2);

}

else

{

$temp3[$menu_grade_temp+1]="";

$temp6=implode("/",$temp3);

echo "$menu_array[1]
";

}

}

}

}

// 连接 MySql 数据库

$db_host="localhost";

$db_user="dkj";

$db_password="123";

$db_name="test";

mysql_connect($db_host,$db_user,$db_password);

mysql_select_db($db_name);

//从数据库中取得数据

$query_string="select * from menu order by menu_grade";

$db_data=mysql_query($query_string);

//第一次执行初始化

if ($menu_grade_temp=="")

{

$menu_superior_temp=0;

}

//将所有的信息读入数组,并统计数组个数

$i=0;

while (list($menu_id,$menu,$menu_grade,$menu_superior)=mysql_fetch_row($db_data))

{

$menu_content[$i]=$menu_id."/".$menu."/".$menu_grade."/".$menu_superior;

$i++;

}

my_menu($menu_content,$i,1,$menu_superior_temp);

/* 附数据库结构及模拟数据

# phpMyAdmin MySQL-Dump

#

# 主机: localhost 数据库 : test

# --------------------------------------------------------

#

# 数据表的结构 'menu'

#

CREATE TABLE menu (

menu_id int(11) NOT NULL auto_increment,

menu varchar(20) NOT NULL,

menu_grade int(11) NOT NULL,

menu_superior int(11) NOT NULL,

UNIQUE menu_id (menu_id)

);

#

# 导出下面的数据库内容 'menu'

#

INSERT INTO menu VALUES( '1', '计算机', '1', '0');

INSERT INTO menu VALUES( '2', '编程', '2', '1');

INSERT INTO menu VALUES( '3', '网络', '2', '1');

INSERT INTO menu VALUES( '4', 'PHP与MySql', '3', '2');

INSERT INTO menu VALUES( '5', 'C语言', '3', '2');

INSERT INTO menu VALUES( '6', '网页制作', '3', '3');

INSERT INTO menu VALUES( '7', 'TCP、IP协议', '3', '3');

INSERT INTO menu VALUES( '8', '数学', '1', '0');

INSERT INTO menu VALUES( '9', '高等数学', '2', '8');

INSERT INTO menu VALUES( '10', '线性代数', '3', '9');

INSERT INTO menu VALUES( '11', '离散数学', '3', '9');

INSERT INTO menu VALUES( '12', '初等数学', '2', '8');

INSERT INTO menu VALUES( '13', '文学', '1', '0');

INSERT INTO menu VALUES( '14', '中国文学', '2', '13');

INSERT INTO menu VALUES( '15', 'php', '4', '4');

INSERT INTO menu VALUES( '16', 'mysql', '4', '4');

*/

?>

相关文章

基于PHP与XML的PDF文档生成技术...2006-10-10

VML绘图板②脚本--VMLgraph.js、XMLtool.js...2006-10-10

类似于其他编程语言,PHP的程序员提供了一种方法来定义的功能,它可以在其他地方被称为方案。2010-05-05

用PHP连接Oracle数据库...2006-10-10

PHP4引用文件语句的对比...2006-10-10

真正面向对象编程:PHP5.01发布...2006-10-10

BBS(php & mysql)完整版(二)...2006-10-10

PHP制作图型计数器的例子...2006-10-10

用PHP实现文件上传二法...2006-10-10

在windows iis5下安装php4.0+mysql之我见...2006-10-10

最新评论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux如何设置mac快捷键,在Ubuntu上使用macOS的快捷键

因为常用机一台Mac&#xff0c;一台Linux&#xff0c;都频繁使用&#xff0c;两个系统不同的快捷键已经让人精神分裂了&#xff01;macOS几乎所有的快捷键都基于command键&#xff0c;全选(cmda)、复制(cmdc)、粘贴(cmdv)、开关标签页(cmdt/w)、切换窗口(cmdtab)、保存(cmds)、…

IDC报告:阿里云领跑中国数据库市场年度份额首超传统厂商

简介&#xff1a; IDC报告显示&#xff0c;2020年中国关系型数据库软件市场规模达到121.8亿元&#xff0c;同比增长36.5%。其中&#xff0c;以公有云模式部署的关系型数据库市场占比达到51.5%&#xff0c;首次超过传统线下部署模式市场规模&#xff0c;预计到2025年将继续走高&…

极狐(GitLab)发布首款“GitNative”DevOps云一体化解决方案

2022年1月5日&#xff0c;极狐(GitLab)正式宣布推出业界首款“GitNative”——“Git原生” DevOps 云一体化解决方案&#xff08;以下简称“GitNative”&#xff09;&#xff0c;为企业提供开箱即用的全栈式DevOps能力&#xff0c;交付软硬一体化和云服务一体化的DevOps平台解决…

稳若磐石的「云上奥运」背后,是云计算新界面的崛起

简介&#xff1a; 今年奥运会首次采用阿里云支撑全球转播&#xff0c;这是奥运迈入数字时代的重要一步。对于这届特殊的奥运会来说&#xff0c;技术至关重要。我们相信&#xff0c;这次创造历史的实践&#xff0c;将为未来支撑更多体育爱好者把“云观赛”转变为参与国际体育赛事…

linux测试手柄,Linux Joystick 介绍

Linux手柄使用Linux手柄驱动&#xff0c; 一般为joydev&#xff0c; 可使用modprobe -a joydev加载驱动模块。手柄连接后的原始设备文件为/dev/hidraw*&#xff0c; 这个和具体手柄厂商的驱动相关。需要针对特定手柄进行操作优化可能需要使用这个设备。通常情况下joydev手柄驱动…

python 职场需求_九年从业经验的职场人是否需要学习Python语言

首先&#xff0c;对于已经有9年从业经验的职场人来说&#xff0c;当前持续学习编程语言还是有必要的&#xff0c;一方面未来的职场上升空间非常大&#xff0c;另一方面掌握编程语言也是顺应当前互联网、人工智能时代的发展要求&#xff0c;随着工业互联网的发展&#xff0c;未来…

10分钟!构建支持10万/秒请求的大型网站

简介&#xff1a; 应用网关作为应用的统一接入层&#xff0c;它的发展和演进也是伴随着应用架构的变化&#xff0c;大家都知道企业应用从最早期 SOA 时代发展到微服务的时代。在 SOA 时代&#xff0c;传统的企业服务总线承担了企业应用的统一接入层&#xff1b;但是发展到微服务…

服务实体经济、战略级行业再下一城,钉钉发布制造行业解决方案2.0

编辑 | 宋慧 出品 | CSDN 云计算 1月5日&#xff0c;钉钉召开主题为“数字新生”的2022制造业钉峰会。会上&#xff0c;钉钉正式发布制造行业解决方案2.0&#xff0c;该方案以“码上制造”产品为制造行业专属底座&#xff0c;提供设备上钉、计件日结等基础产品&#xff0c;同时…

阿里云边缘云全新架构升级,助力CDN操控新体验

简介&#xff1a; 本次升级根据上万企业客户的使用反馈和行业应用特征&#xff0c;从简单开通到个性化定制&#xff0c;从内容分发到边缘计算完整解决方案&#xff0c;对客户侧的使用体验进行了全局梳理和全链路优化&#xff0c;推进边缘云CDN操控革新&#xff0c;并逐步构建面…

key redis 遍历_快乐运维Redis大数据量查询与清理

一、 keys命令(生产环境禁止使用)简单粗暴&#xff0c;由于Redis单线程这一特性&#xff0c;keys命令是以阻塞的方式执行的&#xff0c;keys是以遍历的方式实现的复杂度是 O(n)&#xff0c;Redis库中的key越多&#xff0c;查找实现代价越大&#xff0c;产生的阻塞时间越长。key…

linux部分基础命令总结,Linux常用基础命令总结

近期自己学习了一下Linux&#xff0c;写这篇博客以便于对自己的一个总结&#xff0c;记录自己的学习情况&#xff0c;奥利给&#xff01;想对Linux熟练掌握&#xff0c;就必须学会它的操作命令&#xff0c;虽然可能会花费一些时间&#xff0c;不过从长远的角度来说&#xff0c;…

MaxCompute执行引擎核心技术DAG揭秘

简介&#xff1a; 作为业界少有的EB级数据分布式平台&#xff0c;MaxCompute每天支撑上千万个分布式作业的运行。这些作业特点各异&#xff0c;既有包含数十万计算节点的超大型作业&#xff0c;也有中小规模的分布式作业。不同用户对于不同规模/特点的作业&#xff0c;在运行时…

自定义导航页_带你回归“真”的导航页

曾经浏览器主页是我们流向各大网站的要道从这里我们可以轻而易举的去往想要去的网站特别是在信息和专业性越来聚集的今天传统的主页难免令人有些审美疲劳或者说花里胡哨hao1232345是这些老牌的主页网站有些审美疲劳随着导航越来越细节化广告也越来越多美感也更少360主页qq主页百…

Redis 压缩列表原理与应用分析

作者 | 西瓜来源 | JAVA架构进阶之路摘要Redis是一款著名的key-value内存数据库软件&#xff0c;同时也是一款卓越的数据结构服务软件。它支持字符串、列表、哈希表、集合、有序集合五种数据结构类型&#xff0c;同时每种数据结构类型针对不同的应用场景又支持不同的编码方式。…

基于 MaxCompute 的智能推荐解决方案

简介&#xff1a; 在互联网行业红利已过、在获客成本越来越高、在用户在线时长全网基本无增长以及信息大爆炸的情况下&#xff0c;如何更好的转化新用户和提升老用户粘性就变得至关重要&#xff0c;智能化的个性化推荐无疑是经过验证的重要手段之一&#xff0c;我们每天使用的移…

linux下的socket在哪个头文件,linux下socket编程常用头文件

sys/types.h&#xff1a;数据类型定义sys/socket.h&#xff1a;提供socket函数及数据结构netinet/in.h&#xff1a;定义数据结构sockaddr_inarpa/inet.h&#xff1a;提供IP地址转换函数netdb.h&#xff1a;提供设置及获取域名的函数sys/ioctl.h&#xff1a;提供对I/O控制的函数…

基于MaxCompute+开放搜索的电商、零售行业搜索开发实践

简介&#xff1a; 搜索一直是电商行业流量来源的核心入口之一&#xff0c;如何搭建电商行业搜索并提升搜索效果&#xff0c;一直是电商行业开发者努力攻克的难题。基于传统数据库或开源引擎虽然能够搭建基础搜索服务&#xff0c;但随着商品数据的增多和业务流量的增长&#xff…

linux系统无法识别固态硬盘_linux查看硬盘是不是ssd

lsscsi&#xff1a;看看硬盘的型号&#xff0c;一般都是ssd字样。[6:0:0:0] disk ATA INTEL SSDSC2KB48 0100 /dev/sda[7:0:0:0] disk ATA INTEL SSDSC2KB48 0100 /dev/sdb[8:0:0:0] disk ATA INTEL SSDSC2KB48 0100 /dev/sdc[9:0:0:0] disk ATA HGST HUS722T2TAL WA09 /dev/sd…

快速搭建实验环境:使用 Terraform 部署 Proxmox 虚拟机

作者 | Addo Zhang来源 | 云原生指北自从用上 m1 的电脑&#xff0c;本地开发环境偶尔会遇到兼容性的问题。比如之前尝试用 Colima 在虚拟机中运行容器运行时和 Kubernetes&#xff0c;其实际使用的还是 aarch64 虚拟机&#xff0c;实际使用还是会有些差异。手上有台之前用的黑…

linux grub 下载,GRUB 2.04发布下载,附新功能介绍

GRUB 2.04版本发布了&#xff0c;它是在GRUB 2.02/2.00的基础上更新的&#xff0c;GRUB 2.02是目前使用得最多的多重启动管理器&#xff0c;全称为GRand Unified Bootloader&#xff0c;使用它可以引导几乎所有的操作系统&#xff0c;包括Unix、Linux、Windows&#xff0c;GRUB…