《(本科)第19章PHP+MySQL编程应用与实例ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)第19章PHP+MySQL编程应用与实例ppt课件.pptx(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:(本科)第19章-PHP+MySQL编程应用与实例ppt课件中国农业大学 李辉pPHP简介pPHP编程基础p使用PHP进行MySQL数据库编程p学生信息管理系统开发实例p知识点小结pMySQL作为中小型数据库管理系统,广泛应用于互联网的各种中小型网站或者管理系统中。应用环境主要是LAMP和XAMPP两种,它们均可使用PHP作为与MySQL数据库进行交互的服务器脚本语言。p本章重点介绍脚本语言PHP进行MySQL数据库编程开发的相关知识。pPHP简介简介pPHP编程基础p使用PHP进行MySQL数据库编程p学生信息管理系统开发实例p知识点小结pPHP(Hypertext Prepro
2、cessor,超文本预处理器)是一种通用开通用开源脚本源脚本语言。p主要适用于Web开发领域开发领域。PHP的文件后缀名为*.php。pPHP作为一种服务器端的脚本编程语言,凭借其简单、面向对象、解释型、高性能、独立于框架、动态、可移植等特点,成为了当前世界上最流行的构建B/S模式Web应用程序的编程语言之一。p支持多平台多平台,对各种数据库数据库都提供了良好的接口接口,并且操作简单操作简单。pPHP和MySQL目前是Web应用的最佳组合。p本章主要在环境XAMPP(Windows + Apache + MySQL + PHP/Per/Python组合)下,介绍PHP作为服务器脚本,MySQL
3、数据库编程。pPHP简介pPHP编程基础编程基础p使用PHP进行MySQL数据库编程p学生信息管理系统开发实例p知识点小结 This is the first php 第二步:将“first.php”文件部署在XAMPP平台环境中,并放置在XAMPP程序根目录下。 在浏览器地址栏中输入“http:/127.0.0.1/d18/first.php”或“http:/localhost/ d18/first.php”(本书PHP程序运行在本地安装的XAMPP环境下,其中“127.0.0.1”为本地测试IP地址,所有的源程序都在XAMPP安装环境的D:Xampphtdocsd18目录下),若程序成功被
4、执行,则输出结果如图所示。 “”之间的这段代码将会在服务器端解析,并且输出该段代码的执行结果。在上一页图所示的页面上单击鼠标右键,在弹出的快捷菜单中选择“查看源代码”命令,效果如图所示。pPHP简介pPHP编程基础p使用使用PHP进行进行MySQL数据库编程数据库编程p学生信息管理系统开发实例p知识点小结pPHP的mysql函数库函数库可以实现PHP程序对MySQL数据库的各种操作。p在利用mysql库函数访问MySQL数据库之前,需要在PHP的配置文件php.ini中,将“;extension = php_mysql. dll”修改为“extension = php_mysql. dll”,
5、即删除该选项前面的注释符号“;”,然后重新启动Web服务器(例如Apache),这时,PHP程序即可使用mysql函数库。p通过使用内置函数库mysql,PHP程序能够很好地与MySQL数据库进行交互。p使用这种方式所构建的基于B/S模式的Web应用程序的工作流程:(1)在用户计算机的浏览器,通过在地址栏中输人相应URI信息,向网页服务器提出交互请求。(2)网页服务器收到用户浏览器端的交互请求请求。(3)网页服务器根据请求寻找服务器上的网页网页。(4)Web应用服务器(例如Apache)执行页面内包含的PHP代码脚本程序。(5)PHP代码脚本程序通过内置的MySQL API函数访问后台MySQ
6、L数据库服务器。(6) PHP代码脚本程序取回后台MySQL数据库服务器的查询结果。(7)网页服务器将查询处理结果以HTML文档的格式返回给用户浏览器端。p编程步骤:(1)首先建立与MySQL数据库服务器的连接连接。(2)然后选择要对其进行操作的数据库数据库。(3)再执行相应的数据库操作数据库操作,包括对数据的添加、删除、修改和查询等。(4)最后关闭关闭与MySQL数据库服务器的连接。p 以上各步骤,均是通过PHP内置函数库mysql中相应的函数来实现的。p建立与MySQL数据库服务器的连接 : mysql_connect():用于建立非持久非持久连接 mysql_connect(,) mys
7、ql_pconnect():用于建立持久持久连接 mysql_pconnect( )(,):可选项,为字符串型,用于指定要连接的数据库服务器。默认值是“localhost :3306”。:可选项,为字符串型,用于指定登录数据库服务器所使用的用户名。默认值是拥有服务器进程的用户的名称,如超级用户root。:可选项,为字符串型,用于指定登录数据库服务器所的密码。默认为空串。函数mysql_connect()的返回值为资源句柄型资源句柄型(resource)。若其成功执行,则退回一个连接标识号标识号;否则返回逻辑值FALSE。由函数mysql_connect()建立的连接,当数据库操作结束之后将自自
8、动关闭动关闭;而由函数mysql_pconnect()建立的连接会一直存在,是一种稳固持久稳固持久的链接。对于函数mysql_pconnect( )而言,每次连接前都会检查是否使用了同样的进行连接,如果有,则直接使用上次的连接,而不会重复打开。由函数mysql_connect()建立的连接可以使用函数mysql_close()关闭,而使用函数mysql_pconnect()建立起来的连接不能使用不能使用函数mysql_close()关闭。p 选择数据库: 在PHP中,函数mysql_select_db()来选定某个MySQL数据库。 语法格式:mysql_select_db(database,
9、connection) database:必选项,为字符串型,用于指定要选择的数据库名称。 connection可选项,为资源句柄型,用于指定相应的与MySQL数据库服务器相连的连接标识号。若未指定该项,则使用上一个打开的连接。若没有打开的连接,则会使用不带参数的函数mysql_connect()来尝试打开一个连接并使用之。 函数mysql_connect()的返回值为布尔型。若成功执行,则返回TRUE;否则返回FALSE。p 执行数据库操作: 在PHP中,可以使用函数mysql_query()提交并执行SQL语句。 语法格式:mysql_query(query,conection) 说明:1
10、.query:必选项,为字符串型,指定要提交的SQL语句。注意,SQL语句是以字符串的形式提交,且不以分号作为结束符。2.connection:可选项,为资源句柄型,用于指定相应的与MySQL数据库服务器相连的连接标识号。若未指定该项,则使用上一个打开的连接。若没有打开的连接,则会使用不带参数的函数mysql_connect()来尝试打开一个连接并使用之。3.函数mysql_query()的返回值是资源句柄型。 对于 SELECT、SHOW、EXPLAIN或DESCRIBE语句,若执行成功,则返回相应的结果标识符标识符,否则返回FALSE; 对于CREATETABLE、DROP TABLE、I
11、NSERT、DELETE、UPDATE或其他非检索语句,若执行成功,则返回TRUE,否则返回FALSE。 四种操作: 数据的添加:MySQL中用于插入数据的INSERT语句。 数据的查询:MySQL中用于数据检索的SELECT语句。 数据的修改:MySQL中用于更新数据的UPDATE语句。 数据的删除:MySQL中用于删除数据的DELETE语句。p 数据的查询: 将MySQL中用于数据检索的SELECT语句置于函数mysq1_query()中,实现在选定的数据库表中查询数据。 此时,当函数mysql_query ()成功执行时,其返回值不再是一个逻辑值TRUE,而是一个资源句柄型的结果标识符资
12、源句柄型的结果标识符。 结果标识符也称结果集,代表了相应查询语句的查询结果。每个结果集都有一个记录指针,指向的记录即为当前记录。在初始状态下,结果集的当前记录就是第一条记录。 为了灵活地处理结果集中的相关记录,PHP提供了一系列的处理函数,包括结果集中记录的读取、指针的定位以及记录集的释放等。读取结果集中的记录可以使用函数mysql_fetch_array()、mysql_fetch_row ()或mysql_fetch_assoc()来读取结果集中的记录。语法格式:mysql_fetch_array(data,array_type)mysql_fetch_row (data)mysql_fe
13、tch_assoc(data)(1)data:为资源句柄型,用于指定要使用的数据指针。该数据指针可指向函数mysql_query()产生的结果集,即结果标识符。(2)array_type:可选项,为整型(int),用于指定函数返回值的形式,其有效取值为PHP常量MYSQL_NUM(表示数字数组)、MYSQL_ASSOC(表示关联数组)或MYSQL_BOTH(表示同时产生关联数组和数字数组)。其默认值为MYSQL_BOTH。(3)三个函数成功被执行后,其返回值均为数组类型( array)。若成功,即读取到当前记录,则返回一个由结果集当前记录所生成的数据,其中每个字段的值会保存到相应的索引元素中,
14、并自动将记录指针指向下一个记录。若失败,即没有读取到记录,则返回FALSE。读取结果集的记录行总数在PHP中,可以使用函数mysqk_num_rows( )来读取结果集的记录数,即数据集的行数。语法格式:mysql_num_rows(data)语法说明如下。必选项,为资源句柄型,用于指定要使用的数据指针。该数据指针可指向函数mysql_query()产生的结果集,即结果标识符。函数mysql_num_rows()成功执行后,返回结果集中记录行总数。读取指定记录号的记录在PHP中,可以使用函数mysqk_data_seek( )在结果集中随意移动记录的指针,也就是将记录指针直接指向某个记录。语法
15、格式:mysqk_data_seek(data,row)data:必选项,为资源句柄型,用于指定要使用的数据指针。该数据指针可指向函数mysql_query()产生的结果集,即结果标识符。row:必选项,为整型(int),用于指定记录指针所要指向的记录的序号,其中0指示结果集中第一条记录。函数mysql_data_seek()返回值为布尔型(bool)。若成功执行,则返回TRUE;否则,返回FALSE。p 关闭与数据库服务器的连接: 对MySQL数据库的操作执行完毕后,应当及时关闭与MySQL数据库服务器的连接,以释放其所占用的系统资源。 在PHP中,可以使用函数mysql_close()来关
16、闭由函数mysql_connect()所建立的与MygQL数据库服务器的非持久连接。 语法格式: mysql_close(connection) connection:可选项,为资源句柄型,用于指定相应的与MySQL数据库服务器的连接标识号。 返回值为布尔型。若成功执行,则返回TRUE;否则返回FALSE。pPHP简介pPHP编程基础p使用PHP进行MySQL数据库编程p学生信息管理系统开发实例学生信息管理系统开发实例p知识点小结p 为了进一步熟悉MySQL应用程序的开发,本章将运用PHP语言开发一个基于B/S架构的简单实例-学生基本信息管理系统。p 通过讲述系统开发过程:首先需要明确项目需求
17、,并进行合理的需求分析和系统总体设计,同时需要分析系统的使用对象,以及为系统设计合理的数据结构,然后选用PHP语言与开发工具,开发模块功能。 需求描述 系统分析与设计 数据库设计与实现 系统实现p 学生信息管理系统是针对学校学生籍管理的业务处理工作而开发的管理软件。p 它主要用于学校学生信息管理,总体任务是实现学生信息管理的系统化、科学化、规范化和自动化。p 其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除。针对这些要求设计学生信息管理系统。p 学生信息管理系统主要提供该系统的管理员进行操作和使用。p 根据学生信息管理系统的需求特征,一个简单的学生信息管理系统可以分为如
18、图所示的三个主要功能模块:学生管理模块该模块主要负责学生信息的管理。例如学生的姓名、性别、年龄、联系方式和所在的专业。该模块供管理员使用,具体的功能主要包括学生信息的添加、删除、修改和查询等。其UML用例如图所示。专业管理模块该模块主要负责专业信息的管理。例如专业号、专业名等。该模块供系统管理员使用,具体的功能主要包括专业信息的添加、删除、修改和查询等。其UML用例如图所示。管理员模块该模块主要负责管理管理员以及相应的权限。例如管理员名称、登录密码、管理权限等。该模块供系统管理员使用,具体功能主要包括管理员的添加、信息修改,删除等。其UML用例如图所示。p 系统的的E-R图图:p 通过E-R转
19、化成为关系模型关系模型的方法,可将E-R图转化成为如下的关系模式: 1.Student(sno,sname,ssex,sbirth,zno,sclass) 2.specialty(zno,zname) 3. admin(username,password)p 本系统采用B/S架构运行,并且采用三层软件体系架构:即表示层表示层、应用层应用层和数据层数据层构成。 表示层:系统的用户接口,即用户UI,在这里体现为Web显示页面,主要用HTML标签语言来展现。 应用层:本例的功能层,即应用服务器,位于表示层和数据层之间,负责具体业务逻辑处理,以及与表示层、数据层的信息交互,主要用PHP脚本语言来实现。
20、 数据层:位于系统的最底层,具体为MySQL数据库服务器,主要是通过SQL数据库操作语言,负责对MySQL数据库中的数据进行读写管理,以及更新与检索,并与应用层实现数据交互。1实例系统的主页面设计与实现主页面index. html学生信息管理系统学生信息管理系统学生管理添加学生查看学生班级管理添加班级查看班级管理员添加管理员查看管理员2公共代码模块的设计与实现编辑conn. php页面,conn. php的实现代码如下:3添加学生页面的设计与实现编辑添加学生信息页面add.php,add. php的实现代码如下。添加学生添加学生学生学号: 学生姓名 : 出生日期 : 学生性别:专业号:1102
21、1103121813071409160118051807学生班级 : 3添加学生页面的设计与实现页面效果:3添加学生页面的设计与实现当在添加学生的Web页面完成学生信息的填写之后,单击该页面的“提交”按钮后,即可调用应用层中用于执行添加的代码insert_student. php,该文件实现代码如下:4查看学生页面的设计与实现编辑添加学生信息页面show. php。?php/构成SQL语句$sql= SELECT * FROM student;$result = mysql_query( $sql, $conn) ;if( $result)echo ;while( $row= mysql_fetch_row($result)echo 学号:.$row0.姓名:.$row1.性别:.$row2.生日:.$row3.专业号.$row4.班级.$row5;echo ;else echo查看失败;?pPHP简介pPHP编程基础p使用PHP进行MySQL数据库编程p学生信息管理系统开发实例p知识点小结知识点小结本章知识小结:p PHP语言及其编程的基础p 利用PHP语言进行MySQL数据库编程的相关知识p 使用PHP语言开发MySQL应用系统的过程谢谢!中国农业大学 李辉 Email:
限制150内