Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)归海一刀
published in(发表于) 2014/2/10 6:54:43
用PHP实现多级树型菜单_[PHP教程]

用PHP实现多级树型菜单_[PHP教程]

//树型目录结构模板程序
//菜单目录库字段说明:
//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');
*/
?>





If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759