当前位置:首页 > PHP教程 > php应用 > 列表

PHP+mysql实现的三级联动菜单功能示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-11-09 15:24:44 浏览: 评论:0 

这篇文章主要介绍了PHP+mysql实现的三级联动菜单功能,涉及mysql数据库创建、数据添加及php读取mysql、创建联动菜单相关操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP+mysql实现的三级联动菜单功能,分享给大家供大家参考,具体如下:

数据库mysql

  1. -- 数据库: `student` 
  2. -- 
  3. -- -------------------------------------------------------- 
  4. -- 
  5. -- 表的结构 `student` 
  6. -- 
  7. CREATE TABLE `student` ( 
  8.  `id` int(50) NOT NULL auto_increment, 
  9.  `namevarchar(50) collate utf8_unicode_ci NOT NULL
  10.  `dept` varchar(50) collate utf8_unicode_ci NOT NULL
  11.  `class` varchar(50) collate utf8_unicode_ci NOT NULL
  12.  `sex` varchar(50) collate utf8_unicode_ci NOT NULL
  13.  `dept_id` int(50) NOT NULL
  14.  `class_id` int(50) NOT NULL
  15.  PRIMARY KEY (`id`) 
  16. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ; 
  17. -- 
  18. -- 导出表中的数据 `student` 
  19. -- 
  20. INSERT INTO `student` (`id`, `name`, `dept`, `class`, `sex`, `dept_id`, `class_id`) VALUES 
  21. (1, '计算机名字''计算机工程系''计061''男', 1, 11), 
  22. (2, '教计名字''计算机工程系''教技061''男', 1, 14), 
  23. (3, '管理名字''管理系''管理061''女', 2, 21), 
  24. (4, '机械名字''机械工程系''自动化061''男', 3, 31); 

index.php代码:

  1. <?php 
  2. $link=mysql_connect("localhost","root","") or die("数据库服务器连接错误".mysql_error()); 
  3. mysql_select_db("student",$link) or die("数据库访问错误".mysql_error()); 
  4. mysql_query("set character set gb2312"); 
  5. mysql_query("set names gb2312"); 
  6. ?> 
  7. <html> 
  8.  <head> 
  9.  <title>下拉框连动</title> 
  10.  </head> 
  11. <body> 
  12. <script language="JavaScript"> 
  13. //二级菜单数组 
  14. var subcat = new Array(); 
  15. <?php 
  16. $i=0
  17. $sql="select * from student"
  18. $query=mysql_query($sql,$link); 
  19. while($arr=mysql_fetch_array($query)) 
  20.  echo "subcat[".$i++."] = new Array('".$arr["dept_id"]."','".$arr["class"]."','".$arr["class_id"]."');\n"; 
  21. ?> 
  22. //三级菜单数组 
  23. var subcat2 = new Array(); 
  24. <?php 
  25. $i=0
  26. $sql="select * from student"
  27. $query=mysql_query($sql,$link); 
  28. while($arr=mysql_fetch_array($query)) 
  29.  echo "subcat2[".$i++."] = new Array('".$arr["class_id"]."','".$arr["class"]."','".$arr["name"]."');\n"; 
  30. ?> 
  31. function changeselect1(locationid) 
  32.  document.form1.s2.length = 0
  33.  document.form1.s2.options[0] = new Option('22请选择22',''); 
  34.  for (i=0; i<subcat.length; i++) 
  35.  { 
  36.  if (subcat[i][0] == locationid) 
  37.  { 
  38.   document.form1.s2.options[document.form1.s2.length] = new Option(subcat[i][1], subcat[i][2]); 
  39.  } 
  40.  } 
  41. function changeselect2(locationid) 
  42.  document.form1.s3.length = 0
  43.  document.form1.s3.options[0] = new Option('33请选择33',''); 
  44.  for (i=0; i<subcat2.length; i++) 
  45.  { 
  46.  if (subcat2[i][0] == locationid) 
  47.  { 
  48.   document.form1.s3.options[document.form1.s3.length] = new Option(subcat2[i][2], subcat2[i][0]); 
  49.  } 
  50.  } 
  51. </script>三级联动演示:<BR> 
  52. <form name="form1"> 
  53. <select name="s1" onChange="changeselect1(this.value)"> 
  54. <option>--请选择--</option> 
  55. <option value=1>计算机工程系</option> 
  56. <option value=2>管理系</option> 
  57. <option value=3>机械工程系</option> 
  58. </select> 
  59. <select name="s2" onChange="changeselect2(this.value)"> 
  60.  <option>--请选择--</option> 
  61. </select> 
  62. <select name="s3"> 
  63.  <option>--请选择--</option> 
  64. </select> 
  65. </form> 
  66. </body> 
  67. </html>

Tags: PHP+mysql PHP三级联动

分享到: