首页 > 资讯列表 > 编程/数据库 >> PHP

php 三级联动菜单

PHP 2016-05-29 14:10:08 转载来源: 网络整理/侵权必删

本文主要内容为大家讲解的是php 三级联动菜单。感兴趣的同学可以参考学习下,具体内容如下: 这里有新鲜出炉的PHP面向对象教程,程序狗速度看过来! PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言

本文主要内容为大家讲解的是php 三级联动菜单。感兴趣的同学可以参考学习下,具体内容如下:

这里有新鲜出炉的PHP面向对象教程,程序狗速度看过来!

PHP开源脚本语言

PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

这几天用到了三级联动,将asp的版本改为PHP的了 数据库结构

-- 表的结构 `bigclass` -- CREATE TABLE `bigclass` ( `bigclassid` int(11) NOT NULL auto_increment, `bigclassname` varchar(200) collate utf8_unicode_ci NOT NULL, `sort` int(11) NOT NULL, `suoshu` int(1) NOT NULL, PRIMARY KEY (`bigclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=19 ; -- 表的结构 `smallclass` -- CREATE TABLE `smallclass` ( `smallclassid` int(11) NOT NULL auto_increment, `smallclassname` varchar(200) collate utf8_unicode_ci NOT NULL, `bigclassid` int(11) NOT NULL, `sort` int(11) NOT NULL, PRIMARY KEY (`smallclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ; -- 表的结构 `minclass` -- CREATE TABLE `minclass` ( `minclassid` int(10) NOT NULL auto_increment, `minclassname` varchar(200) NOT NULL, `bigclassid` int(10) NOT NULL, `smallclassid` int(10) NOT NULL, `sort` int(10) NOT NULL, PRIMARY KEY (`minclassid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

代码如下

<script language = "JavaScript"> var onecount; onecount=0; subcat = new Array(); <? //类别选择 mysql_select_db($database_lr, $lr); $sql = "select * from smallclass order by sort"; $result = mysql_query( $sql ); $count = 0; while($res = mysql_fetch_row($result)){ ?> subcat[<?=$count?>] = new Array("<?=$res[1]?>","<?=$res[4]?>","<?=$res[0]?>"); <? $count++; } ?> onecount=<?php echo $count?> //联动函数 function changelocation(bigclassid) { document.myform.smallclassid.length = 0; var bigclassid=bigclassid; var i; document.myform.smallclassid.options[0] = new Option('请选择二级分类',''); for (i=0;i < onecount; i++) { if (subcat[i][1] == bigclassid) { document.myform.smallclassid.options[document.myform.smallclassid.length] = new Option(subcat[i][0], subcat[i][2]); } } } </script> <?php mysql_select_db($database_lr, $lr); $sql2 = "select * from minclass order by sort"; $result2 = mysql_query( $sql2 ); $count2 = 0; ?> <script language = "JavaScript"> //如果这个数组中含有双引号则不能使用。即二级和三级类不能含有双引号 var onecount2; onecount2=0; subcat2 = new Array(); <?php $count2 = 0; while($res2 = mysql_fetch_row($result2)){ ?> subcat2[<?php echo $count2?>] = new Array("<?php echo $res2[1]?>","<?php echo $res2[3]?>","<?php echo $res2[0]?>"); <?php $count2++; } ?> onecount2=<?php echo $count2?>; function changelocation2(smallclassid) { document.myform.minclassid.length = 0; var smallclassid=smallclassid; var j; document.myform.minclassid.options[0] = new Option('请选择三级分类',''); for (j=0;j < onecount2; j++) { if (subcat2[j][1] == smallclassid) { document.myform.minclassid.options[document.myform.minclassid.length] = new Option(subcat2[j][0], subcat2[j][2]); } } } </script> <select name="bigclassid" onChange="changelocation(document.myform.bigclassid.options[document.myform.bigclassid.selectedIndex].value)" size="1"> <option selected value="">请指定一级分类</option> <? $sql = "select * from bigclass order by sort"; $result = mysql_query( $sql ); while($res = mysql_fetch_row($result)){ ?> <option value="<? echo $res[0]; ?>"><? echo $res[1]?></option> <? } ?> </select> <select name="smallclassid" onChange="changelocation2(document.myform.smallclassid.options[document.myform.smallclassid.selectedIndex].value)" size="1"> <option selected value="">请指定二级分类</option> </select> <select name="minclassid" size="1"> <option selected value="">==所有三级分类==</option> </select>

标签: php 三级 联动 菜单


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持