php+mysql实现的二级联动菜单效果详解,mysql联动
本文实例讲述了php+mysql实现的二级联动菜单效果。分享给大家供大家参考,具体如下:
<!--php+mysql二级联动--> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>生成学院专业级联下拉菜单测试 </title> </head> <body> <? // /*********************************************** ** 功 能: php+mysql+javascript实现学院专业二级级联下拉框 ** 数据库:数据库名( dms)、数据表( colleges、 majors) ** 表 colleges中字段: college_id( id编号)、 name(学院名) ** 表 majors中的字段: major_id( id编号)、 college_id(学院 ID)、 name(学院名) ** version 1.0 ** 作 者: wu yaowen ***********************************************/ //****************** 连接选择数据库 *************** $link = mysql_connect("localhost", "root", "123456") or die("Could not connect : " . mysql_error()); mysql_select_db("dms") or die("Could not select database"); //******************提取学院信息 ****************** $queryCol = "select * from colleges order by college_id "; mysql_query("SET NAMES 'gb2312'"); $result1 = mysql_query($queryCol) or die("Query failed : " . mysql_error()); $colleges = array(); while( $row1 = mysql_fetch_array($result1) ) { $colleges[] = $row1; } //print_r ($forum_data); mysql_free_result($result1); //**************获取专业信息 ************** $queryMaj = "select * from majors order by college_id desc"; mysql_query("SET NAMES 'gb2312'"); if( !($result2 = mysql_query($queryMaj)) ) { die('Could not query t_city list'); } $majors = array(); while( $row2 = mysql_fetch_array($result2) ) { $majors[] = $row2; } mysql_free_result($result2); ?> <!--************ JavaScript处理 college-onChange *************--> <script language = "JavaScript"> var majorCount; // 存储专业记录条数 // form_majors[] 储存专业 major数据,如 {(1,1,电子商务 ),(4,1,计算机科学 ),(3,2,古典文学 )} form_majors = new Array(); <?php $num2 = count($majors); // $num2 获取专业表中记录的个数 ?> majorCount = <?php echo $num2;?>; <? for($j=0;$j<$num2;$j++) // 从 0开始取出上面 majors[]中存储的专业数据填充数组 { ?> form_majors[<?echo $j;?>] = new Array("<?echo $majors[$j]['major_id'];?>","<?echo $majors[$j]['college_id'];?>","<?echo $majors[$j]['name'];?>"); <?php } ?> function changeCollege(college_id) { document.stu_add_form.major.length = 0; var id=id; var j; document.stu_add_form.major.options[0] = new Option('==选择专业 ==',''); // label的 value为空 ' ' for (j=0;j < majorCount; j++) // 从 0开始判断 { if (form_majors[j][1] == college_id) // if college_id等于选择的学院的 id { document.stu_add_form.major.options[document.stu_add_form.major.length] = new Option(form_majors[j][2], form_majors[j][0]); } } } </script> <!--********************页面表单 *************************--> <form name="stu_add_form" method="post"> 选择: <select name="college" onChange="changeCollege(document.stu_add_form.college.options[document.stu_add_form.college.selectedIndex].value)" size="1"> <option selected>==请选择学院 ==</option> <?php $num = count($colleges); for($i=0;$i<$num;$i++) { ?> <option value="<?echo $colleges[$i]['college_id'];?>"><?echo $colleges[$i]['name'];?></option> <? } ?> </select> <select name="major"> <option selected value="">==选择专业 ==</option> </select> </form> </body> </html>
sql语句:
-- -- 表的结构 `colleges` -- CREATE TABLE IF NOT EXISTS `colleges` ( `college_id` int(8) NOT NULL auto_increment COMMENT '学院编号自动增加', `name` varchar(40) NOT NULL COMMENT '学院名称', PRIMARY KEY (`college_id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312 AUTO_INCREMENT=7 ; -- -- 导出表中的数据 `colleges` -- INSERT INTO `colleges` (`college_id`, `name`) VALUES (4, '化学与化工学院'), (1, '计算机与信息科学学院'), (6, '美术学院'), (2, '文学院'), (5, '音乐学院'), (3, '政治与公共管理学院'); -- -- 表的结构 `majors` -- CREATE TABLE IF NOT EXISTS `majors` ( `major_id` int(8) NOT NULL auto_increment COMMENT '专业号,自动增加', `name` varchar(40) NOT NULL COMMENT '专业名', `college_id` int(8) default NULL COMMENT '所在学院', `counsellor_id` int(10) default NULL COMMENT '辅导员', PRIMARY KEY (`major_id`), UNIQUE KEY `college_id` (`college_id`,`counsellor_id`) ) ENGINE=InnoDB DEFAULT CHARSET=gb2312 AUTO_INCREMENT=8 ; -- -- 导出表中的数据 `majors` -- INSERT INTO `majors` (`major_id`, `name`, `college_id`, `counsellor_id`) VALUES (1, '电子商务', 1, 1), (2, '音乐视唱', 5, 1), (3, '古典文学', 2, 1), (4, '计算机科学', 1, NULL), (5, '自动化', 1, NULL), (6, '现代文学', 2, NULL), (7, '新闻写作', 2, NULL);
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。

PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

PHP는 1994 년에 시작되었으며 Rasmuslerdorf에 의해 개발되었습니다. 원래 웹 사이트 방문자를 추적하는 데 사용되었으며 점차 서버 측 스크립팅 언어로 진화했으며 웹 개발에 널리 사용되었습니다. Python은 1980 년대 후반 Guidovan Rossum에 의해 개발되었으며 1991 년에 처음 출시되었습니다. 코드 가독성과 단순성을 강조하며 과학 컴퓨팅, 데이터 분석 및 기타 분야에 적합합니다.

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

PHP는 현대화 프로세스에서 많은 웹 사이트 및 응용 프로그램을 지원하고 프레임 워크를 통해 개발 요구에 적응하기 때문에 여전히 중요합니다. 1.PHP7은 성능을 향상시키고 새로운 기능을 소개합니다. 2. Laravel, Symfony 및 Codeigniter와 같은 현대 프레임 워크는 개발을 단순화하고 코드 품질을 향상시킵니다. 3. 성능 최적화 및 모범 사례는 응용 프로그램 효율성을 더욱 향상시킵니다.

phphassignificallyimpactedwebdevelopmentandextendsbeyondit

PHP 유형은 코드 품질과 가독성을 향상시키기위한 프롬프트입니다. 1) 스칼라 유형 팁 : PHP7.0이므로 int, float 등과 같은 기능 매개 변수에 기본 데이터 유형을 지정할 수 있습니다. 2) 반환 유형 프롬프트 : 기능 반환 값 유형의 일관성을 확인하십시오. 3) Union 유형 프롬프트 : PHP8.0이므로 기능 매개 변수 또는 반환 값에 여러 유형을 지정할 수 있습니다. 4) Nullable 유형 프롬프트 : NULL 값을 포함하고 널 값을 반환 할 수있는 기능을 포함 할 수 있습니다.

PHP에서는 클론 키워드를 사용하여 객체 사본을 만들고 \ _ \ _ Clone Magic 메소드를 통해 클로닝 동작을 사용자 정의하십시오. 1. 복제 키워드를 사용하여 얕은 사본을 만들어 객체의 속성을 복제하지만 객체의 속성은 아닙니다. 2. \ _ \ _ 클론 방법은 얕은 복사 문제를 피하기 위해 중첩 된 물체를 깊이 복사 할 수 있습니다. 3. 복제의 순환 참조 및 성능 문제를 피하고 클로닝 작업을 최적화하여 효율성을 향상시키기 위해주의를 기울이십시오.

PHP는 웹 개발 및 컨텐츠 관리 시스템에 적합하며 Python은 데이터 과학, 기계 학습 및 자동화 스크립트에 적합합니다. 1.PHP는 빠르고 확장 가능한 웹 사이트 및 응용 프로그램을 구축하는 데 잘 작동하며 WordPress와 같은 CMS에서 일반적으로 사용됩니다. 2. Python은 Numpy 및 Tensorflow와 같은 풍부한 라이브러리를 통해 데이터 과학 및 기계 학습 분야에서 뛰어난 공연을했습니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

Dreamweaver Mac版
시각적 웹 개발 도구
