PHP+mysql实现的三级联动菜单功能示例
Admin 2022-07-07 群英技术资讯 1379 次浏览
这篇文章主要讲解了“PHP+mysql实现的三级联动菜单功能示例”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。本文实例讲述了PHP+mysql实现的三级联动菜单功能。分享给大家供大家参考,具体如下:
数据库mysql
-- 数据库: `student` -- -- -------------------------------------------------------- -- -- 表的结构 `student` -- CREATE TABLE `student` ( `id` int(50) NOT NULL auto_increment, `name` varchar(50) collate utf8_unicode_ci NOT NULL, `dept` varchar(50) collate utf8_unicode_ci NOT NULL, `class` varchar(50) collate utf8_unicode_ci NOT NULL, `sex` varchar(50) collate utf8_unicode_ci NOT NULL, `dept_id` int(50) NOT NULL, `class_id` int(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ; -- -- 导出表中的数据 `student` -- INSERT INTO `student` (`id`, `name`, `dept`, `class`, `sex`, `dept_id`, `class_id`) VALUES (1, '计算机名字', '计算机工程系', '计061', '男', 1, 11), (2, '教计名字', '计算机工程系', '教技061', '男', 1, 14), (3, '管理名字', '管理系', '管理061', '女', 2, 21), (4, '机械名字', '机械工程系', '自动化061', '男', 3, 31);
index.php代码:
<?php
$link=mysql_connect("localhost","root","") or die("数据库服务器连接错误".mysql_error());
mysql_select_db("student",$link) or die("数据库访问错误".mysql_error());
mysql_query("set character set gb2312");
mysql_query("set names gb2312");
?>
<html>
<head>
<title>下拉框连动</title>
</head>
<body>
<script language="JavaScript">
//二级菜单数组
var subcat = new Array();
<?php
$i=0;
$sql="select * from student";
$query=mysql_query($sql,$link);
while($arr=mysql_fetch_array($query))
{
echo "subcat[".$i++."] = new Array('".$arr["dept_id"]."','".$arr["class"]."','".$arr["class_id"]."');\n";
}
?>
//三级菜单数组
var subcat2 = new Array();
<?php
$i=0;
$sql="select * from student";
$query=mysql_query($sql,$link);
while($arr=mysql_fetch_array($query))
{
echo "subcat2[".$i++."] = new Array('".$arr["class_id"]."','".$arr["class"]."','".$arr["name"]."');\n";
}
?>
function changeselect1(locationid)
{
document.form1.s2.length = 0;
document.form1.s2.options[0] = new Option('22请选择22','');
for (i=0; i<subcat.length; i++)
{
if (subcat[i][0] == locationid)
{
document.form1.s2.options[document.form1.s2.length] = new Option(subcat[i][1], subcat[i][2]);
}
}
}
function changeselect2(locationid)
{
document.form1.s3.length = 0;
document.form1.s3.options[0] = new Option('33请选择33','');
for (i=0; i<subcat2.length; i++)
{
if (subcat2[i][0] == locationid)
{
document.form1.s3.options[document.form1.s3.length] = new Option(subcat2[i][2], subcat2[i][0]);
}
}
}
</script>三级联动演示:<BR>
<form name="form1">
<select name="s1" onChange="changeselect1(this.value)">
<option>--请选择--</option>
<option value=1>计算机工程系</option>
<option value=2>管理系</option>
<option value=3>机械工程系</option>
</select>
<select name="s2" onChange="changeselect2(this.value)">
<option>--请选择--</option>
</select>
<select name="s3">
<option>--请选择--</option>
</select>
</form>
</body>
</html>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
phpstorm修改php版本的方法:首先依次点击“file/setting/Langueages&Frameworks/php/Composer”项;然后在打开的界面中选择php版本号;最后确定保存即可。
这篇文章主要给大家分享的是有关解决laravel数据库迁移报错SQLSTATE[42000]的内容,很多朋友遇到这个问题不知怎么解决,因此分享给大家做个参考,有需要的朋友可以看一下。
这篇文章主要介绍了Laravel5.1 框架模型远层一对多关系,结合实例形式分析了laravel5.1框架模型远层一对多关系相关原理、实现方法与操作注意事项,需要的朋友可以参考下
swoole内存不会越来越大,Server启动后内存管理的底层原理与普通php-cli程序一致。在事件回调函数中,非局部变量的字符串进行拼接操作是必须小心内存泄漏,如 TestClass::$string .= $data,可能会有内存泄漏
这篇文章给大家分享是关于session创建和销毁的方法,小编认为是比较实用的,因此分享给大家,下面介绍是使用PHP7创建与销毁session的方法,有这方面学习需求的朋友可以看看。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008