版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课章节:第一章PHP入门课时4学时教学目的:通过学习,学生可以了解PHP程序的工作流程,并可以编写、运行简单的PHP程序教学重点:PHP程序工作流程以及PHP运行环境的安装、配置。教学难点:PHP程序的工作流程在windows中配置Apache、PHP以及MySQL。解锁第一个PHP程序的工作流程。教学实施过程设计教学内容:1-1PHP概况1.PHP的优势
PHP发展到今人,只备了很多优势:
(l)易学好用(2)免费开源(3)良好的可扩展性(4)平台无关性(跨平台)(5)功能全面(6)数据库支持(7)面向对象编程
2.PHP的应用领域
PHP主要月于以下3个应用领域。
(l)服务器端脚本程序(2)命令行脚木程序(3)桌面应用程序
使用PHP编写服务器端脚木程序是PHP最常用的应用领域,这也是木课程着重阐述的内容。
3.HTML内嵌式的脚本语言
这是我的第一个PHP程序:
<br/>
<php
echo"helloworld!">
<br/>
<phpechodate("y年m月d日h时i分s秒">注意:PHP代码通常以符号“<php开始,符号>”结束,这两个符号分别叫做PHP开始标记和结束标记。
PHP程序文件名中的扩展名通常使用“.php“,例如
1-2PHP脚本程序工作流程
1.WEB浏览器
WEB浏览器(WEBBrowser)也叫网页浏览器,简称浏览器。浏览器是用户最为常用的客户端程序,主要功能是显示HTML网页内容,并让用户与这些网页内容产生互动。常见的浏览器有微软的InternetExplorer(简称IE)浏览器、Mozilla的Firefox浏览器等。2.HTML简介
HTML是网页的静态内容,这些静态内容由HTML标记产生,WEB浏览器识别这些HTML标记并解释执行。例如WER浏览器识别HTML标记“<br/>”,将<br/>标记解析为一个换行。在PHP程序开发过程中,HTML主要负责页面的互动、布局和美观。3.PHP预处理器
PHP预处理器(PHPPreprocessor)的功能是将PHP程序中PHP代码解释为文本信息,这些文木信息中可以包含HTML代码。服务器
WEB服务器(WEBServer)也称为WWW(WordWideWeb)服务器,功能是解析HTTP。当WEB服务器接收到浏览器的一个HTTP动态请求时.WEB服务器会调用与请求对应的程序,程序经PHP预处理器解释执行后,WEB服务器向浏览器返回HTTP响应,该响应通常是一个HTML页面.浏览器接收到该HTTP响应后,将执行结果显示在浏览器或进行其他处理。
常见的WEB服务器有微软的InternetInformationServer(IIS)服务器、IBM的WebSphere服务器、开源的Apache服务器等。其中Apache具有免费、速度快且性能稳定等特点,它已成为目前最为流行的WEB服务器。
5.数据库服务器数据库服务器(DataBaseServer)是一套为应用程序提供数据管理服务的软件,这些服务包括数据管理服务(例如数据的添加、删除、修改、杳询)、事务管理服务、索引服务、高速缓存服务、查询优化服务、安全及多用户存取控制服务等。常见的数据库服务器有甲骨文的Oracle、微软的SQLServer、IBM的DB2、SAP的Sybase以及SUN公司的MySQL数据库服务器。由于MySQL具有体积小、速度快、免费等特点,许多中小型WEB系统选择MySQL作为数据库服务器。6.PHP程序的下作流程l-3PHP服务器构建1.安装Apache服务器:双击11文件2.2.19,在安装程序打开窗口中,除了制定安装目录,并设定输入土机名、管理员信箱。一路选择“Next”下去,完整安装。注(在此我们将Apache服务器安装在D:/apache/)安装完成后,在任务栏托盘区中会增加一个Apache服务程序运行图标,这说明服务器已经安装成功,在IE地址栏中键入迎,即可看到Apache的欢迎页面。2.设置Apache的服务端口在Apache安装路径下的D:\Apache\\conf\文件夹中,打开文件,找到“listen80”所在的一行,将“83.安装PHP环境
将php也解压缩在d:/apache/php日录下4.配置PHP参数
(l)在步骤2所用到的文件中,在文件最后加上以下三行代码PHPIniDir“D:\Apache\php”
LoadModulephp5_module“D:\Apache\php\"
AddTyPeapplication/
其中:
①PHPIniDir:“一行的”中填写为PHP的安装路径。
=2\*GB3②LoadModulephp5_module”一行的”填写为PHP的安装路径\。(2)设置PHP文件存放路径
打开文件,在文件最后加上<Directory“D:\Apache\wwwroot">(D:\Apache\wwwroot是放置web目录的路径,路径即是存放网站的路径)OptionsIndexesFollowSymLinks
AllowOverrideNoneOrderallowdenyAllowfromall</Directory>(3)配置启用默认文档
打开D:\Apache\\conf\
<IfModuledir_module>238行附近,设置启用默认文档
Directorylndex
</ItModule>(4)配置虚拟目录
①打开文件,启用Includcconf/extra/httpd-vhosts.conf②打开Apache\\conf\extra中的文件并进行配置,即设置虚拟目录与域名,在D盘的Apache文件夹下创建wwwroot文件夹。<VirtualHost*:80>ServerAdminDocumentRoot”D:\Apache\wwwroot\test“
ServerNametest
ErrorLog”D:\Apache\wwwroot\test\logs\“
CustomLog”D:\Apache\wwwroot\test\logs\”common</VirtualHost*:80>
ServerAdmin
DocumentRoot“D:\Apache\wwwroot\phpMyAdmin”
ServerNamemysql
ErrorLog”D:\Apache\wwwroot\phpMyAdmin\logs\”
CustonLog“D:\Apache\wwwroot\phpMyAdmin\logs\”common</VirtuaHost>注:以上的logs文件夹是存放错误日志的文件夹(5)找到PHP的安装路径下的php.ini(复制一份,文件名修改为),启用配置
找到:
extension_dir=”D:\Apache\php\ext”(491行附近,此行说明要调用ext中的文件)=”D:\Apache\tmp”(session临时保存的文件夹,其中tem是白行创建的,995行附近)
extension=(前面的;去掉)启用618行附近
extension=(前面的;去掉)启用633行附近
upload_tmp_dir=“D:\Apache\tmp”(上传文件临时保存的文件夹,其中tmp是自行创建的)549行附近
(6)将PHP安装路径下的文件php5ts.dll.复制到Winnt(Windows)/systenl32/目录中。
5.安装Mysql在Apache文件夹下,安装详细步骤见MySQL详细安装步骤.doc文档。
6.配置Mysql数据库的管理程序phpMyAdmin
①将phPMyAdmin整个文件夹复制到wwwroot文件夹下,phpMyAdmin是用来管理数据库MySQL的程序;②在wwwroot创建一个名为test的文件夹,该文件夹即是存放网站的文件夹;7.配胃C:\WINDOWS\system32\drivers\etc下的hosts文件,即域名和本地IP一致。8.创建一个简单的PHP程序,保存为,并将其存放test文件夹下在地址栏里输入,如果输出hello,world!,说明环境配置正确<html><head>
<title>Firstprogram</title>
</head>
<body>
<phpecho“helloword!”;></body></html>9.上述(1)、(2)、(3)、(4)、(5)、(6)、(7)都做完后,重新启动Apache服务。复习及作业布置:自己动手搭建PHP运行环境及其配置。扩展学习参考:课后反思:教学过程:1、介绍一下课程的情况,包括课时,学分,课程的性质,学生学习本课程能获得什么知识能达到什么目的,强调课程的重要性以及课程学习好的方法。介绍本课程的考核方式,强调平时成绩的重要性。2、借助多媒体课件,对PHP进行介绍,介绍PHP脚本程序工作流程,演示服务器的构建。介绍代码基本语法及PHP程序组成及编码规范。3让学生自己实际动手操作搭建运行环境。授课章节:第二章PHP基础课时4学时教学目的:通过学习,学生可以从整体上认识PHP程序的各个组成部分,并可以制作功能简单的用户注册系统。教学重点:PHP数据、PHP数据类型、浏览器端的数据采集、PHP程序的数据采集、PHP数据处理、PHP数据的输出。教学难点:编程规范习惯的养成PHP数据、PHP数据类型、浏览器端的数据采集、PHP程序的数据采集、PHP数据处理、PHP数据的输出。教学实施过程设计教学内容:2-1PHP代码基本语法开始标记与结束标记(1)开始标记“<php”和结束标记“>”(2)开始标记“<scriptlanguage=”php””>和结束标记“</script>”(3)开始标记“<”和结束标记“>”(4)开始标记“<%”和结束标记“%>”注释PHP支持如下三种注释风格(例如程序):第一种:/*多行注释风格*/;第二种:于PHP数据
与传统的高级语言一样;
(1)PHP使用变量或常量实现数据在内存中的存储,并使用变量名(例如$userName)或常量名(例如PI)实现了内存数据的按名存取。(2)PHP使用等于号“=”(赋值运算符)给变量赋值。(3)PHP不允许直接访问一个未经初始化的变量,否则PHP预处理器会提示Notice信息。
(4)PHP提供变量作用域的概念实现内存数据的安全访问控制。(5)PHP引入了数据类型的概念修饰和管理数据。与传统的高级语言不一样:
(1)PHP变量名之前要加美元符号“$”标识,例如$userName变量。(2)PHP是一种“弱类型的语言”,声明变量或常量时,不需要事先声明变量或常量的数据类型,PHP会自动由PHP预处理器根据变量的值将变量转换成适当的数据类型。数据类型PHP数据类型分为四种:标量数据类型、复合数据类型、特殊数据类型和伪类型。其中标量数据类型分为四种:布尔型、整型、浮点型和字符串型;复合数据类型共有两种:数组和对象;特殊数据类型有资源数据类型和空数据类型;伪类型通常在函数的定义中使用。3.浏览器端的数据采集浏览器端数据的采集主要依靠HTML提供的FORM表单实现。FORM表单是包含一系列表单元素的区域,表单元素是允许用户在表单中输入信息的元素。常见的表单元索有:文本域、下拉列表、单选框、复选框等。程序的数据采集
PHP程序负责采集用户注朋FORM表单提交的数据,然后进行显示。<php
$userName=$_GET[“userName”];
$password=$_GET[“password”];
$confirmPassword=$_GET[“confirmPassword”];
1”3.为代码添加注释软件开发是一种高级脑力劳动,精妙的算法之后往往伴随着难以理解的代码,对于不经常维护的代码,往往连开发者本人也忘记编写的初衷。要为代码添加注释,增强代码的可读性和可维护性。有时添加注释和编写代码一样难,但养成这样的习惯是必要的。请记住:尽最大努力把方便留给别人和将来的自己。复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:本章着重讲述PHP基本语法、PHP程序的组成以及PHP编码规范,详细讲解PHP数据类型以及数据输出等知识。通过本章的学习,读者可以从整体上认识PHP程序的各个组成部分,并可以制作功能简单的用户注册系统。讲解新知:1.代码基本语法2.编码规范程序的组成授课章节:第三章PHP表达式课时4学时教学目的:通过学习,学生可以了解变量、常量、常用运算符、变量状态函数以及类型转换的相关知识,为今后设计更为复杂的程序奠定坚实的基础。教学重点:isset()函数、unset()函数、empty()函数的使用字符串连接运算符、错误抑制符、比较运算符等运算符的使用数据类型的转换。教学难点:理解“空”与NULL的区别,数据类型的自动转换。教学实施过程设计教学内容:3-1常量
1.自定义常量
define()函数的语法格式:
define(name,值为value[,Booleancase_insensitive])
功能:定义一个名字为name,值为value的常量:ase_insensitive参数的默认值默认为FALESE,表示常量名name大小写敏感(区分大小写):case_insensitive参数值如果为TRUE,表示常晕名name大小写不敏感(不区分大小写)。说明:常量名name为字符串类型数据,常量值value必须是标量数据类型数据。注意:常量名前面不加前缀”$”符号。常量的作用域是全局的,不存在使用范围的问趣,可以在程序任意位置进行定义和使用常量。常最一旦被定义,其值不能在程序过程中修改,也不能被销毁。
2.常量的内存分配内存中专门为常量的存储分配了一个空间:常量存储区。常量存储区是一块比较特殊的存储空间,位于该存储空间的常量是全局的,且在程序运行期间不能修改和销毁。3.预定义常量PHP还预定义了许多常最,这些常量无需使用define()函数定义,可直接在程序中使用。
(1)_FILE_(FILE前后是两个下划线):当前正在处理的脚木文件名。
(2)_LINE_(LINE前后是两个下划线):正在处理的脚本文件的当前行数。(3)PHPV_VERSION:当前PHP预处理器的版本。(4)PHP_OS:PHP所在的操作系统的类型,如Linux。
(5)TRUE:表示逻辑真:FALSE常最:表示逻辑假:NULL常最:表示没有值或值不确定。
(6)DIRECTORY_SEPARATOR常量:表示目录分隔符,Unix或Linux操作系统环境时的值为“/”Windows操作系统环境时的值为“\”。
3-2变量
1.变量基本概念
变量是用于临时存储数据的容器,这些数据可以是任意一种数据类型的数据PHP中的变最名遵循以下规则:
(1)变量名必须以美元符号($)开头,例如:$userName。
(2)变量名的第一个字符必须是字母或下划线(不能是数字),变量名称可以包含字母、数字和下划线的组合。
(3)PHP中的变量名是区分大小写的,这是一个非常重要的规则。这意味着$userName和$UserName是截然不同的两个变量。
2.变量赋值方式
(1)传位赋值方式
(2)传地址赋值方式3.可变变量PHP提供了一种特殊类型的变量:可变变量,可变变最允许PHP程序动态地改一个变量的变量名,可变变量的工作原理是用一个变量的“值”作为另一个变量的“名”。3-3有关变量或常量状态的函数1.数据类型查看函数(1)gettype()函数
(2)var_dump函数
2.检查常量或变量是否定义函数
(1)define()函数
(2)isset函数
3.取消变量定义unset()函数
4.检查变量是否为“空”
(1)empty()函数
(2)is_nul()函数
5.数据类型检查函数
3-4PHP运算符
1.算术运算符2.递增乒递减运算符3.赋值运算符4.比较运算符5.逻辑运算符6.字符串连接运算符7.错误抑制运算符8.条件运算符9.类型运算符10.执行运算符11.位运算符12.运算符优先级
3-5数据类型的转换1.类型自动转换2.强制类型转换复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:PHP表达式是PHP程序最为重要的组成部分,PHP表达式指的是将相同数据类型或不同数据类型的数据,用运算符号按一定的规则连接起来、有意义的式子,木章可以围绕表达式详细讲解表达式中涉及的变最、常量以及常用运算符,最后讨论表达式中数据类型之间的相互转换。讲解新知:(1)详细讲解常量(2)详细讲解变量(3)介绍有关变量和常量状态的函数(4)详细讲解PHP运算符(5)介绍数据类型的转换最后对本次课内容进行总结授课章节:第四章PHP流程控制课时4学时教学目的:通过学习,学生可以了解条件控制结构、循环结构以及程序跳转和终止语句3种类型的PHP流程控制语句,这3种类型的流程控制构成了面向过程编程的核心。通过学习,为今后设计更为复杂的程序奠定坚实的基础。教学重点:if…else…语句、switch语句、while语句以及break语句、continue语句、exit语句。教学难点:switch语句、while语句以及break语句、continue语句、exit语句。教学实施过程设计教学内容:4-1条件控制结构语句If语句的语法格式为:If(条件表达式){语句块}………else语句if…….else语句的语法格式为:if(条件表达式){语句块1}else{语句块2}3,.switch语句Switch语句的语法格式:Switch(表达式){Case值1:语句块1;break;Case值2:语句块2;break;……………Default:语句块n;}4-2循环结构1.while循环语句while循环语句是最简单的循环语句,它的语法格式跟if语句相似:while(条件表达式){
语句块;}……while循环语句
do……while循环语句的语法格式如下所示:
do{语句块;
}while(条件表达式);
:循环语句
for循环语句的语法格式如下所示:
for(表达式l;条件表达式2;表达式3){
语句块;
}
for循环语句中,各表达式的功能如下:
表达式1的功能是初始化循环控制变量,表达式l只执行一次,并且不是必需的。条件表达式2为循环控制条件,若条件表达式2值为TRUE,则执行语句块;若条件表达式2值为队FALSE则跳出for循环。条件表达式2也不是必需的。表达式3的功能是修改循环控制变量的值。表达式3也不是必需的。
4.循环结构应用
程序使用PHP循环结构制作九九乘法表。
4-3其他流程控制语句
语句
continue语句一般在for、while或do…while循环结构中使用。在循环结构中,当程序执行至continue时,程序将跳过木次循环中剩余的代码并开始执行下一次循环。例如程序的功能是计算l+3+5+…+99的奇数和。
语句
当break在switch语句中使用时,它会使程序跳出当前的Switch语句。brcak语句还可以使用在for、while或do…while循环语句中,使得程序跳出当前循环结构。例如程序的功能时计算I+2+3+…+100的和。3.终止PHP程序运行exit语言结构的语法格式:voidexit([stringmessage])
exit语言结构的功能:输出字符串信息message,然后终止PHP程序的运行。例如程序·
从程序的运行结果可以看出:
(1)使用逻辑或(or)表达式:$aor$b可以强制只有表达式$a的结果为队FALSE时,表达式$b才会执行。
(2)当某个表达式运行失败时,该表达式的结果为FALSE。复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:PHP程序中如果没有流程控制语句,PHP程序将从第一条PHP语句开始执行,一直运行到最后一条PHP语句。流程控制语句用于改变程序执行次序,从而控制程序的执行流程。讲解新知:(1)通过例子讲解条件控制语句(2)通过例子讲解循环结构(3)通过例子讲解程序跳转和终止语句授课章节:第五章PHP数组课时4学时教学目的:通过学习,学生可以了解数组的基本概念以及数组常用的处理函数,并掌握几种数组遍历方法。教学重点:数组的遍历foreach语言结构、常用数组函数的使用、数组内部指针。教学难点:各种数组遍历的方法常用数组函数的使用,例如快速创建数组的函数、数组统计函数、数组指针函数、数组和变量间的转换函数、数组遍历语言结构、数组检索函数。教学实施过程设计教学内容:
5-1数组的基本概念
1.为什么引入数组
使用标量数据类型定义的变量只能存储单个“数据”,仅依靠标量数据类型远不现实生活中的一些常见问题,例如一个设置个人信息的页面。2.数组的分类一维数组、二维数组、多维数组5-2一维数组的创建1.直接将变量声明为数组元素,一个变量声明为一个数组元素有三种方法:第一种方法:不指定数组元素的“键”,示例程序:$characters[]=”humour”;
第二种方法:将数组元索的“键”指定为某个整数,示例程序:$iterests[2]=”music”;第三种方法:将数组元素的“键”指定为某个字符串,示例程序:$colors[“red]=”red”;2.使用array()语言结构创建数组
PHP提供了array()语言结构创建数组,array()语言结构接受一定数量用逗号分隔的key=>value参数对,这样可以一次性地为数组添加多个元素(若key省略,则key值为整数)。
3.创建数组的注意事项
(1)如果数组元素中的“键”是一个浮点数,则‘键”将被强制转换为整数(例如浮点数将被强制转换为整数8),如果“键”是TRUE或FALSE,则‘键”将被强制转换为整数1或O。(2)如果数组元素中的“键”是一个字符串,且该字符串完个符合整数格式时,数组元素的“键”将被强制转换为整数(例如“9”将被强制转换为整数9)。
(3)由于数组元素中的“键”唯一标识一个元素,因此数组中元素的“键”不能相等(使用==比较)。如果两个数组元素的“键”相等,“键”对应的值将被覆盖。
(4)不要在array()语言结构中使用诸如”red=>””red”键值对的方式创建数组元素,也不要使用诸如$colors[red]=”red”的赋值语句的方式创建数组元素,否则程序的可读性及运行效率将大扫折扣。
4.数组元素“值”的访问访问数组元素值的方法和访问变量值的方法相同:通过指定数组名并在方括号内指定”键名”的方式“访问”数组元素的”值”。使用这样的方法访问数组,不仅可以读取某个数组元素的“值”,还可以为数组添加数组元素以及修改数组元素的“值”,并可以像访问“变最”的方法访问数组元素的值。PHP提供两种变量赋值方式:传值赋值和传地址赋值,对于数组同样适用。5-3多维数组1.二维数组的创建
二维数组的创建方法和一维数组的创建方法相同。
方法一:直接将变量声明为二维数组
方法二:使用array()语言结构创建二维数组
2.二维数组元素“值”的访问
二维数组中存在两个“键”,因此访问数组元素的“值“时需要指定这两个”键”。例如:$students[“2010001”][“studentName”]对应的值是”张三”,其中第一个键”2010001”用于指定二维数组$studcnts中的某一‘行”,第二个“键”$studentName用于指定二维数组$student的该“行”的某一“列”。只使用第一个“键“访问数组时,访问的是二维数组中的某一“行”,该行是一个一维数组。
(1)range()函数
语法格式:arrayrange(mixedstart,mixedend)
函数功能:快速创建一个从start到end范围的数字数组或字符数组。
函数说明:如果start>end,序列将从start到end。
(2)explode()函数
语法格式:arrayexplode(stringseparator,stringst)
函数功能:使用指定的字符串分隔符separator分割字符串str,将分割后的字符串放到数组中,并返回该数组。
(3)array_combine()函数
语法格式:array_combine(arraykeys,arrayvalues)
函数功能:创建一个新数组,用数组keys的值位作为新数组的“键”,数组values的值作为新数组的“值”。
(4)array_fill()函数
语法格式:arrayarray_fill(intstart_key,intlength,mixedvalue)
函数功能:创建一个数组,并为该数组添加length个数组元素,数组元素的“键“,从start_key处开始始递增,每个数组元素的值为value。
说明:length必须是一个大于零的数值,否则PHP会提示Warning警告信息。(5)array_pad()函数语法格式arrayarray_pad(arrayarr,intpad_size,mixedpad_value)
函数功能:array_pad()函数返回数组arr的一个拷贝,并用pad_value将其填补到pad_size指定的长度。如果Pad_size为正,则数组被填补到右侧,如果为负则从左侧升始填补。如果pad_size的绝对值小于或等于input数组的长度则没有任何填补。
2.数组统计函数
(1)count()函数
语法格式:intcount(arrayarr[intmode])
函数功能:统计并计算数组arr中元素的个数。如果数组arr是多维数组,可将mode参数的值设为常量COUNT_RECURSIVE(或整数l),计算数组arr中所有元素的个数;mode的默认值是0。该函数的别名函数为sizeof()。
(2)max()函数
语法格式:mixedmax(arrayarr[,array……])
函数功能:统计并计算数组arr中元素的最大值。
说明:PHP会将非数值的字符串当成0处理,但如果这个正是最大的数值则仍然会返回一个字符串。如果多个数组元素的值为0且是最大值,函数会返回其中数值的0,如果数组元素中没有数值的O,则返回按字母表顺序最大的字符串。
(3)min()函数语法格式:mixedmin(arrayarr[,array…])
函数功能:统计并计算数组arr中元素的最小值。
说明:PHP会将数组arr中的字符串当成0处理,如果字符串正是数组arr中最小的数值,则仍然会返回一个字符串:min()函数返回一个字符串时,该字符串为数组中顺序靠前的字符串。
(4)array_sum()函数
语法格式::numberarry_sum(arrayarr)
函数功能:统计并计算数组arr中的所有元素值的和,array_sum()返回整数或浮点数。说明:PHP会将数组arr中的非数值类型的元素值自动类型转换为整数或浮点数。(5)array_product()函数
语法格式:numberarray_product(arrayarr)
函数功能:统计并计算数组arr中所有元素值的乘积,该函数返回整数或浮点数。说明:PHP会将数组arr中的非数值类型的数据自动类型转换为整数或浮点数。(6)array_count_values()函数
语法格式:arrayarray_count_values(arrayarr)
函数功能:统计并计算数组arr中所有元素的值出现的次数。
3.数组指针函数4.数组和变量间的转换函数5.数组遍历语言结构
6.数组检索函数7.数组排序函数8.数组与数据结构9.数组集合运算函数复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:数组(Array)是一组批量的数据存储空间,这一组存储空间在内存是邻接的,每一个存储空间存储了一个数组元素,元素之间使用“键”(key)来识别,通过数组名和“键”的组合数组中每一个元素的访问。然后按以下内容讲解:(1)讲解数组的基本概念(2)通过演示讲解一维数组的创建(3)介绍多维数组(4)介绍数组处理函数及应用最后对本次课内容进行总结授课章节:第六章PHP的数据采集课时4学时教学目的:通过学习,学生可以了解浏览器端数据的各种提交方式,如何创建FORM表单实现浏览器端的数据采集,PHP程序各种数据采集的方法,以及如何实现文件的上传功能。通过本章的学习,读者可以结合PHP数组实现功能复杂的“用户注册系统”。教学重点:设计FORM表单、文件上传的表单的设计以及如何实现文件上传功能。教学难点:在FORM表单中使用数组文件上传的具体流程、与文件上传有关的配置 多文件上传的实现(可以参考习题以及习题答案)。教学实施过程设计教学内容:
6-1浏览器端数据的提交方式
提交方式
GET提交方式是将“请求”数据以查询字符串(QueryString)格式附在URL之后“提交”数据。例如:
=victor&password=1234&confirmpassword=1234在这个URL中,问号“”表示查询字符串的开始,问号“”后面的字符串参数"userName=victor&password=1234&confirmPassword=1234”为查寻字符串。可以看出:查询字符串可以包含多个参数,每个参数以“参数名=参数值”的格式定义,参数之间使用“&”相连,最后再将查询字符串使用“”2.POST提交方式POST数据提交方式一般通过FORM表单实现,由于默认情况下FORM表单的数据提交方式为GET方式,必须在FORM表单的<form/>标签中加入属性:method=“post”,将数据提交方式修改为POST方式。
和POST混合提交方式还可以使用FORM表单实现GET和POST混合提交方式,即向WFB服务器某PHP程序发出“GET请求”的同时,还向该PHP程序发出“POST清求”.
4.两种提交方式的比较
POST提交方式比GET提交方式安全。这是由于GET提交方式提交的数据将出现在URL查询字符串中,并且这些带有查询字符串的URL可以被浏览器缓存到历史记录中。因此诸如用户注朋、登录等系统,不建议使用GFT提交方式。
POST提交方式可以提交更多的数据。理论上讲POST提交方式提交的数据没有大小限制,而GET提交方式提交的数据由于出现在URL查询字符串中,而URL的长度是受限制的(例如IE浏览器对URL长度的限制是2083字节)。例如:新闻发布系统中提交篇幅较长的新闻信息时,不建议使用GET提交方式:带有文件上传功能的FORM表单则必须使用POST提交方式。不同的“提交”方式对应的服务器端数据“采集”方式不同。
6-2相对路径和绝对路径
1.绝对路径
绝对路径是与相对路径相对立的,通常是一个完整的URL,该URL由两个部分构成:scheme:用来描述寻找数据所采用的机制,即:协议。如http协议和ftp协议等位置(Location):用来描述到哪儿去寻找数据的资源
这两部分使用“:对路径相对路径可以分为两类:server-relative路径与relative路径。server-relative路径是以斜杠“/”开头的相对路径。在HTML中,以斜杠“/”开头的相对路径表示从WEB服务器的根目录下开始查找相应的资源文件。使用默认配置安装WAMP后,目录“C:/wamp/www”为Apache服务器的根目录,因此使用相对路径“/”访问资源时,访问的是目录“C:/wamp/www”下的页面;使用相对路径“/6/”访问资源时,访问的是目录“C:/wamp/www”中的目录“6”下的register.html文件。relative路径不以斜杠开头。此时当文件l访问文件2(HTIL页面、PHP程序或图片等)资源时,将从文件1的当前目录作为起点查找文件2资源。例如当目录“C:/wamp/www/6/”3.相对路径其它概念
(1)同一个日录下的资源访问如果文件1和文件2在同一个日录,这两个文件间的相互访问直接使用文件名即可。(2)如何表示当前目录
.表示文件的当前日录。
(3)如何表示上级目录
../表示文件所在目录的上一级目录,../../表示文件所在目录的上上级目录,以此类推。(4)如何表示下级目录如果文件1访问下级目录中文件2,直接指定该目录和文件2的文件名即可。6-3使用FORM表单实现浏览器端的数据采集
FORM表单由三部分组成:
表单标签:定义了表单处理程序及数据提文方式等信息。
表单控件:包括单行文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等表单控件。
表单按钮:包括提交按钮、复位按钮和一般按钮。
1.表单标签<form></form>
表单标签<form>常用的属性有action、method、enctype、title、name等。
(1)action属书设置当前表单数据“提交”的目的地址。当不设置action属性,或设置值等于空字符串(即action="")时,表单数据提交给当前页面。
(2)method属性设置表单数据的提交方式。method属性的值为GET或POST,默认为GET。
(3)title属性设置表单的提示信息。当用户的鼠标在表单处停留时,浏览器用一个黄色的小浮标显示提示文本。(4)enctype属性设置提交表单数据时的编码方式.enctype属性的位为multipart/form-data或application/x-www-urlencodded,默认为”application/x-www-form-urlencoded”。当一个FORM表单‘中存在文件上传框时,必须将enctype属性设置为multipart/form-data编码方式。
(5)name属性为当前的FORM表单命名。
2.表单控件
(1)单行文本框(2)密码枢(3)多行文本枢(4)隐藏域(5)复选枢
(6)单选枢(7)文件上传框(8)下拉选择框
注意:表单控件嵌套在FORM表单中才有意义,每个表单控件都要一个name属性进行标识。这是因为WEB服务器将依据表单控件的name属性判断传递给服务器的每个值分别是由哪个表单控件产。为了确保数据的准确采集,需要为每个表单控件定义一个独一无二的名称(同为一个组的单选框以及在表单控件中使用数组两种情况除外)。3.在表单控件中使用数组在一个HTML页面中,有时并不清楚某种表单控件的具体个数。例如:在进行多文件上传时,并不能确定浏览器用户究竟选择多少个上传文件,更无法确定页面中需要多少个文件上传框。在表单控件中使用数组可以解决类似的问题。
在表单控件的name属性值后面加上方括号“[]”从而实现在表单控件中使用数组。使用表单控件数组后,当表单提交时,相同name属性的表单控件则以数组的方式向WEB服务器提交多个数据。
4.表单按钮
(1)提交按钮(2)图像提交按钮(3)重置按钮(4)自定义按钮
表单综合应用
6-4使用$_GET和$_POST“采集”表单数据
当浏览器向WFB服务器某PHP程序提交数据后,该PHP程序应该根据其“提交”方式决定使用何种数据“采集”方法。当浏览器以GET方式提交的数据时,服务器端PHP程序应当使用预定义变最$GET“采集”提交数据:当浏览器以POST方式提交的数据时,服务器端PHP程序应当使用预定义变量$_POST“采集”提交数据;当以POST方式提交的请求数据中包含上传文件时,服务器端PHP程序应当使用预定义变星$_FILES“采集“上传文件。
6-5上传文件的“数据采集”
1.与上传相关的配置
下面的配置选项保存在配置文件中,可以适当的修改这些的配置选项满足特定的文件上传需要。file_uploads:配置了是否允许通过HTTP协议上传文件。默认值为On,表示PHP预处理器支持文件上传功能。典型配置示例:file_uploads=On。
post_max_size:使用POST提交方式提交表单数据时,post_max_size选项配置了PHP预处理器能够接受的最大表单数据大小。默认值为8M,表示表单中所有数据(包括上传文件)大小之和必须小于8M字节,否则PHP程序将不能采集到任何的表单数据。即当表单数据大小大:post_max_size选项定义的值时,提交表单后,$_GET、$_POST和$_FILES将为空数组。典型配置示例:post_max_size=8M。
文件上传流程
3.预定义变最$_FlLES
4.预定义变量$_FILES文件上传的实现
6-6WEB服务器端其它数据采集方法
复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入,本章首先讲解浏览器端数据的提交方式,然后讲解如何创建FORM表单实现浏览器端的数据采集,最后讲解PHP程序各种数据采集的方法,通过本章的学习,学生可以结合PHP数组实现功能复杂的“用户注册系统”。然后按以下内容讲解:(1)介绍浏览器端数据的提交方式(2)详细讲解相对路径和绝对路径(3)通过演示讲解使用FORM表单实现浏览器端的数据采集(4)详细讲解使用$_GET和$_POST采集表单数据最后对本次课内容进行总结授课章节:第七章PHP自定义函数课时4学时教学目的:通过学习,学生可以了解PHP文件间相互引用的4个PHP语言结构,如何创建和调用用户自定义函数,创建具有文件上传功能的自定义函数,重构“用户注册系统”的代码,增强代码重用性。教学重点:设计具有文件上传功能的自定义函数,重构“用户注册系统”的代码设计。教学难点:static关键字以及global关键字的使用、return语言结构的使用、如何使用函数增强代码重用性。教学实施过程设计教学内容:7-1PHP文件间的引用
语言结构
include语言结构的语法格式:mixedinclude(stringresource)
include语言结构的功能:incude语言结构将一个资源文件resource载入到当前PHP程序。字符串参数:resource是一个资源文件的文件名,该资源可以是本地WEB报务器上的资源,如图片、HTML页面、PHP页面等,也可以是互联网上的资源。若找不到资源文件:语言结构返回FALSE;若找到资源文件:resource,且资源文件resource没有返回值,返回整数l,否则返网资源文件resource的返回值。
2.require与include语言结构的比较
require语言结构的语法格式及功能与include相同,只不过两者之间存在着细微的区别。在错误处理方便:使用include语言结构,如果被引用文件发生错误或不能找到被引用文件,引用文件将提示Waming信息然后继续执行下面的语句。使用require语言结构,如果被引用文件发生错误或不能找到被引用文件,引用文件将提示waming信息及Fatalerror:致命错误信息然后终止程序运行。
和require_once语言结构include_once和require_once语言结构分别对应于include和require语言结构,使用include_once和require_once语言结构可以有效避免多次引用同一个PHP文件而引起函数或变量的重复定义问题的发生。
include_once语言结构的语法格式:mixedinclude_once(stringresource)
include_once语言结构功能:include_once语句将一个资源文件resource载入到当前PHP程序中。若找不到资源文件resource,include_once语句返回队FALSE。若找到资源文件resource,且该资源文件第一次载入,include_once语句返可整数1;若找到资源文件resource,且该资源己经载入,include_once语句返TRUE。
7-2函数概述
1.函数的概念
程序设计中,可以将经常使用的代码段独立出来,形成单独的子程序,这些子程序就是函数。函数只需要定义一次,之后便可以重复使用,故可以增强了代码的重用性。一般而言,函数的功能比较单一,因此函数的编写和维护比较容易。2.函数的分类PHP函数种类和变量种类的划分方法相似,PHP中有三种类型的函数:内置函数、自定义函数和变量函数。
内置函数类似了于预定义变举。PHP内置函数是PHP已预定义好的函数,这些函数在编程时无需定义,可以直接使用。
自定义函数类似于自定义变量,由程序员根据特定需要编写出来的代码段。和内置函数不同,自定义函数只有在定义之后才可以使用。
变量函数类似于可变变量,变量函数的函数名为一个变量。三种类型的函数都有一个共同特点:调用函数时,函数名大小写不敏感,例如:调用md5()函数和调用MD5()函数实质上是调用同一个函数。
7-3自定义函数
1.自定义函数的定义
在PHP中,定义自定义函数的语法格式为:
functionfunctionName($param1,$param2,$param3$paramn=defaultValue){函数体;
return返回值;}2.自定义函数的声明和调用调用自定义函数时需要注意:应该先声明自定义函数,然后才可以在调用处使用如下方式调用自定义函数:
functionName(paramlValue,param2Value,param3ValueparamnValue)
当函数的定义和函数的调用位于不同的PHP文件时,需要使用include(include_once)或require语言结构(require_once)引用函数定义所在的PHP文件,这个过程称为函数的声明。当函数的定义和函数的调用位于几同一个PHP文件时,此时无须函数的声明即可直接调用自定义函数。
3.自定义函数的参数赋值
和变晕赋值方法相同,自定义函数的参数赋值有两种方法:传值赋值和传地址赋值。(1)传值赋值默认情况下,自定义函数的参数是按传值赋值的方式为函数参数赋值,即将一个值的“拷贝”赋值给函数的参数。(2)传地址赋值自定义函数的参数也可使用传地址赋值,即:将一个变量的“引用”传递给函数的参数。和变量传地址赋值的方式一样,在函数的参数名前追加一个“&”符实现传地址赋值。4.变量的作用域和global关键字
4.变量的作用域取决于变量在PHP程序的位置:
∅在函数内定义的变景(包括函数的参数)为局部变耸,局部变量在调用函数结束后被白动回收。
∅在函数外定义的变量为全局变量,声明后的全局变量可以被PHP程序中所有语句访问(函数内的PHP语句除外),当程序执行到程序末尾的时候,全局变量才被自动回收。全局变最也可以应用于include语句和require语句所引用的PHP程序文件。
如果函数中的PHP语句要访问全局变量,需要在函数内定义的变量名前加关键字global,此时函数内局部变量变为全局变量。
5.变量的生存周期和static关键字
函数内定义的变量生存周期是短暂的:每一次函数调用的开始到这一次函数调用的结束。有时希望函数中的变量能够从这次调用一直存活到下次调用,此时需要在该变量前加上static关键字。static关键字一般在函数定义中使用,用于修饰局部变量。
6.变量函数
变量函数类似于可变变量,变量函数的函数名为变量。使用变量函数可以实现通过改变变量的值的方法调用不同的函数。变量函数的调用方法如下:
$varName(paramlValue,param2Value,param3Valu3,…paramnValue)
7-4自定义函数综合示例文件上传功能的函数upload()的制作
表单综合应用
<pllp
functionupload($file,$filePath){
$error=$file[‘error’];
switch($error){
case0:
$fileName=$file[‘nanle’];
$fileTemp=$file[‘tmp_name’];
$destination=$filePath.”/”.$fileName;move_uploaded_file($fileTemp,$destination);return“文件上传成功!”;case1:return“上传附件超过了中upload_max_filesize选项限制的值!”case2:return“上传附件的大小超过了form表单MAX_FILE_SIZE选项指定的值!”case3:return“附件只有部分被上传!”case4:return“没有选择上传附件”}}>复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:本章一改先介绍PHP文件间相互引月!的4个PHP语言结构,然后重点介绍如何创建和调用用户白定义函数,通过本章的学习,学生可以创建具有文件上传功能的自定义函数,重构“用户注册系统”的代码,增强代码重用性。讲解新课:(1)对上次课进行回顾并提问。(2)通过例子详细讲解文件引用语句及各种语句之间的区别(3)介绍函数的概念(4)讲解自定义函数相关的语法及用法(5)介绍return语言结构(6)课堂总结。授课章节:第八章MySQL数据库课时4学时教学目的:通过学习,学生可以了解数据库的功能、数据库常用的专业术语、常用的SQL语句。通过具体案例学生管理系统设计该系统的数据库,通过学习,学生具备简单数据库系统设计与开发的能力,为今后设计更为复杂的应用系统奠定坚实的基础。教学重点:数据库的设计流程,如何设计E-R图,主键、外键、约束等专业术语在MySQL数据库中的实现,常用的存储引擎例如MyISAM存储引擎、InnoDB存储引擎,MySQL字符集的设置,MySQL数据库管理、表的管理、更新操作、查询操作。教学难点:数据库的设计流程、开发流程,如何设计数据库表、如何选择数据库表的主键,如何防止中文乱码问题,Create语句、drop语句的使用,Select语句的使用、insert语句、update语句、delete语句的使用,如何实现分页,MySQL特殊字符序列。教学实施过程设计教学内容:
8-1数据库概述
1.数据库
数据库是一种专门存储信息和维护信息的容器,严格地说数据库是“按照数据结构来组织、存储和管理信息的仓库”。
外观上,数据库中的二维表(简称数据库表)和电子表格Excel是相同的。数据库表是由列和行构成,数据库表中的一列称为一个字段,每个字段用于存储某种数据类型的数据:数据库表中的一行称为一条记录,每条记录包含表中的一条详细信息。数据库是一种专门存储信息和维护信的容器,严格地说数据库是“按照数据结构来组织、存储和管理信息的仓库”。外观上,数据库中的二维表(简称数据库表)和电子表格Excel是相同的。数据库表是由列和行构成,数据库表中的一列称为一个字段,每个字段用于存储某种数据类型的数据:数据库表中的一行称为一条记录,每条记录包含表中的一条详细信息。2.关系数据库管理系统(RDBMS)关系数据库管理系统(RDBMS或relationaldatabasemanagementsystem)就是管理关系数据库的软件系统。关系数据库管理系统主要功能就是创建关系数据库,并且在关系数据库中创建各种数据库对象(表、索引、视图、存储过程等)以及维护各个数据库对象.对于初学者而言,关系数据库管理系统最重要的功能莫过于创建数据库、创建数据库表以及完成数据库表记录的添加、修改、删除和查询等操作。
3.结构化查询语言SQL
结构化查询语言的英文全称是structuredquerylanguage,简称SQL。SQL是一种应用广泛的关系数据库语言,用于定义和管理关系数据库中的各种对象(表、索引、视图、存储过程等),也可以用于查询、修改和删除数据库表中的记录。8-2数据库的设计
数据库的设计一般要从E-R模型开始,之后的步骤如下:
(1)为每个实体建立一张表
(2)为每个表选择个主键(建议添加一个没有实际意义的字段作为土键)(3)增加外键以表示一对多关系
(4)建立新表表示多对多关系
(5)定义约束条件
(6)评价关系的质量,并进行必要的改进(关于范式等知识请参考其他数据库书籍)(7)为每个字段选择合适的数据类型和取值范围
模型
E-R(Entity-Relationship)模型即实体-关系模型主要用于定义数的存储需求,该模型己经泛用广用于关系数据库设计中。E-R模型由实体、属性和关系三个基本要素构成。2.主键(Primarykey)数据库表要求表的中的每一行记录都必须是唯一的,即在同一张表中不允许出现完全相同的两条记录。在设计数据库时,为了保证记录的“唯一性”,最为书遍、最为推荐的做法是为表定义一个主键(primarykey)。数据库表中主键有以下两个特征:(1)表的主键可以由一个字段构成,也可以由多个字段构成(这种情况称为义合主键)。(2)数据库表中主键的直具有唯一性且不能取空值(NULL),当数据库表中的主键由多个字段构成时每个字段的值不能取NULL值。
3.实体间的关系与外键(Foreignkey)
班级实体和班主任实体之间为一对一关系,班级实体和学生实体之间为一对多关系,学生实体和课程实体之问为多对多关系。实体间的关系可以通过外键来表示。如果表A中的一个字段a对应于表B的土键b,则字段a称为表A的外键。此时存储在表A中字段a的值,同时这个字段位也是表B主键b的值。
4.约束(constraint)
常用的约束条件有六种:
主键(primarykey)约束外键(foreignkey)约束
唯一性(unique)约束
默认值(default)约束
非空(notNULL)约束
检查(check)约束
8-3MySQL简介
服务器的启动
2.连接MysQL服务器
启动MySQL服务器后,需要使用MySQL客户端成功打开一个MySQL服务器连接,才能实现与MySQL数据库之间的交互,如图所示。MySQL提供了MySQLconsole命令窗口客户端实现与MySQL服务器之间的交互。
和InnoDB存储引擎
8-4字符集
1.字符集简介
字符集
中的字符集转换过程
字符集的设置
脚本文件
8-5MySQL数据库管理1.创建数据库2.选择当前操作的数据库
3.显示数据库结构
4.删除数据库8-6数据库表的管理
1.数据类型
MySQL共有3种数据类型,分别是数值类型、字符串类型和日期类型。数值类型之整数类型
数值类型之精确小数类型
符串类型之定长字符串类型
字符串类型之变长字符串类型
字符串类型之文木类型
日期类型之日期类型
日期类型之口期时间型
中的附加属性MySQL还提供了一些附加属性用于修饰数据类型,例如NULL和auto_increment。
MySQL提供了附加属性NULL,NULL的意义为“没有值”或“不确定的值”。auto_increment如果需要为某个表的某个字段进行唯一编号,以标识每条记录,在MySQL中可以将该字段设置为auto_increment(自动增长)。
3.创建数据库表
4.显示数据库表结构
5.删除数据库表
8-7表记录的更新操作
1.表记录的添加2.表记录的修改3.表记录的删除复习及作业布置:扩展学习参考:课后反思:教学过程:(1)对上次课进行回顾并提问(2)介绍数据库相关的概念(3)介绍数据库设计有关的知识(4)简单介绍MySQL(5)详细介绍MySQL中字符集的概念(6)通过演示讲解MySQL的有关操作(7)介绍MySQL特殊字符序列(8)课堂总结授课章节:第九章PHP与MySQL数据库课时4学时教学目的:结合学生管理系统数据库,通过学习,学生可以了解使用PHP函数实现PHP与MySQL数据库之间的交互过程,并以用户注册系统为例学习该系统的实现过程。通过学习,学生可以具备简单WEB应用系统设计与开发的能力。教学重点:如何开启数据库连接、如何关闭数据库连接、关闭数据库连接的时机,字符集设置的方法,结果集遍历函数的使用,用户注册系统的实现。教学难点:关闭数据库连接的时机,如何防止SQL注入问题。教学实施过程设计教学内容:
9-1PHP中常用的MySQL操作函数
1.连接MySQL服务器
PHP中连接MySQL数据库服务器最简单的函数是mysql_connect(),语法格式如下:resourcemysql_connect(striinghostname,stringusername,stringpassword)
函数功能:通过PHP程序连接MySql数据库服务器。如果成功连接MySQL服务器,则返回忆个MySQL服务器连接标识(link_identifier),否则返网FALSE。2.设置数据库字符集调用PHP函数mysql_query(“setnames‘gbk’”)可以将character_set_client、character_set_connection和character_set_results的字符集设置为gbk字符集。3.关闭MySQL服务器连接mysql_close()函数的语法格式如下:boolmysql_close([resourcelink_identifier])
函数功能:mysq_close()函数关闭指定的连接标识所关联到的MySQL服务器的连接。如果没有指定link_identifier,则关闭上一个打开的连接。如果关闭成功则返回TRUE,失败则返回FALSE。4.选择当前操作的数据库使用函数mysql_select_db()可以设置当前操作的数据库。该函数的语法格式如下:boolmysql_select_db(stringdatabase_name[,resourcelink_identifier])
函数功能:如果没有指定MySQL服务器连接标识符,则使用上一个打开的MySQL服务器连接。如果没有打开的连接,本函数将无参数调用mysql_connect()函数尝试打开一个新的MySQL服务器连接然后使用它。如果选择当前操作的数据库成功则返回TRUE,否则返回FALSE。
5.发送SQL语句或MySQL命令
mysql_query()函数的语法格式如下:{bool|resouce}mysql_query(stringsql[,resourcelink_identifier])
函数功能:如果没有指定MySQL服务器连接标识link_identifier,则使用已打开的连接。然后向数据库引擎发送sql字符串(SQL语句或MySQL命令)。当发送的sql字符串执行失败时,mysql_query函数返回FALSE:发送的sql字符串是insert语句、update语句或delete语句,并且sql语句成功执行时,mysql_query()函数返回TUR;发送的sql字符串是select语句,并且select语句成功执行时,mysql_query()函数返回结果集(result)类型数据(实际是resource类型的数据)。使用PHP的mysql_query()函数向MySQL服务器引擎发送insert语句、update语句或delete语句后,可以使用mysq_affected_rows()函数查看该SQL语句影响到的表记录行数。mysql_affected_rows()函数的语法格式如下:intmysql_affected_rows([resourcelink_identifier])mysql_affected_rows()函数功能:取得最近一次与link_identifier关联insert、update或delete语句所影响的记录行数。
使用PHP的mysql_query()函数发送insert语句向某个数据库表中添加记录时,若该数据库表中的某个字段为auto_increment自增字段,可以使用mysql_insert_id()函数得到当前insert语句执行后的该字段值。mysql_insert_id()函数的语法格式如下:intmysql_insert_id([resourcelink_identifier])
mysql_insert_id()函数功能:mysql_insert_id()函数返回给定的link_identifier中上一条insert语句产生的auto_increment的ID号;如果没有指定link_identifier,则使用上一个打开的连接。
mysql_query()函数还可以向MySQL务器引擎发送select语句,此时mysql_query函数将返回一个结果集(result)数据,可以使用:mysql_num_rows()函数查看该select语句查询到的表记录行数。Mysql_num_rows()函数的语法格式如下:intmysql_num_rows(resourceresult)mysql_num_rows()语句功能:返回结果集result中记录的行数,该函数仅对select语句有效。结果集(result)使用过后,应该尽快地将其占用的服务器内存资源释放,可以使用函数mysql_free_result()实现,mysql_free_result()函数的语法格式如下:boolmysql_free_result(resourceresult)mysql_free_result()函数功能:释放结果集result占用的服务器内存资源,若执行成功,返回TRUE,否则返回FALSE。使用mysql_query()函数还可以向MySQL服务器引擎发送MySQL命令。例如PHP语句”mysql_query(“setnames‘gbk’”);”将character_set_client、character_set_connection和character_set_results的字符集设置为gbk。6.遍历结果集中的数据mysql_fetch_row()函数的语法格式:arraymysql_fetch_row(resourceresult)mysql_fetch_row()函数功能:从结果集result中取得下一行记录,并将该记录生成一个数组,数组的元素的键为从零开始的整数,数组元素的值依次为select语句中“字段列表”的值。若结果集result中没有下一行记录,则函数返回FALSE。mysql_fetch_array()函数的语法格式:arraymysql_fetch_array(resourceresult)mysql_fetch_array()函数功能:该函数时mysql_fetch_row()函数的扩展版本,该函数的返回值中包括mysql_fetch_row()函数的返回值,还包括select居中“字段列表=>字段列表值”的数组元素。复习及作业布置:扩展学习参考:课后反思:教学过程:复习导入:本章结合注朋登录系统数据库讲解如何使用PHP函数实现PHP与MySql数据库之间的交互,然后以用户注册系统为例讲解该系统的实现过程,通过本章的学习,学生将具备简单WEB应用系统设计.与开发能力。授课章节:第十章新闻发布系统的开发课时4学时教学目的:通过学习,学生可以了解传统的结构化方法开发MIS系统的方法、流程以及分页函数的制作过程,并具备复杂WEB应用系统设计与开发的能力。教学重点:新闻发布系统系统编码实施,分页的原理以及实现。教学难点:新闻发布系统系统编码实施,分页的实现以及分页函数的制作。教学实施过程设计教学内容:10-1用phpmyadmin建立数据库首先建立一个数据库在这个数据库下建立一个数据表,名为news。下面进入一个重点,那就是在表news下建立各个字段。那么,什么叫字段呢通俗点,就是一类事物的总称。比如说,所有的新闻发表时间用一个名词来代表(从偶的经验来看,用phpmyadmin建立字段可以用中文,但从习惯来说还是用英文,没办法,计算机美国最牛嘛)。偶们用“time”来表示。在字段time下可以有很多“发表时间”,那么如何来区分这些时间呢,这个可以查询其它字段下的内容,比如偶们建立新闻的标题的字段为“title”,title字段下的内容按照常理说来是没有一样的。所以可以通过一个标题来查询这个发表时间。其实我们可以让每个title或time下的内容都对应一个编号,那就是字段——“id”:字段“id”是一个人们默认的首选字段,其它字段下的内容可以重复出现,但这个字段却是从1开始增大的阿拉伯数字。在设置这个字段时,要设置主键、索引、唯一以及auto-increment。这个auto-increment就是自动增加的意思。当任一字段增加内容时,这个字段就自动增加1,也就是说,任一字段都对应一个唯一的id,比如1、2、0……下面谈谈新闻部分字段的建立:1.id:意义为每个新闻的编号,它是唯一的,类型为tingint,这个tingint类型无须指定长度,系统默为4;在“额外”中选择auto-increment,并选择主键。2.author:意义为作者(新闻发布人),设置类型为varchar,设置这个字段长度时,如果考虑作者均为中国人,则8个字节为上限(4个汉字),但如果考虑到作者可能为外国人,8个字节显然太少了,对其它字段也存在同样的问题,在这里偶们把长度设置为8吧。3.title:意义为新闻标题,类型为varchar,长度为60吧,属性为primanykey。4.content:意义为新闻的内容,类型为text
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年北盘江职业学院高职单招职业技能考试模拟试卷及完整答案详解【名师系列】
- 2026年淄博现代医药学院高职单招职业技能考试模拟试卷【网校专用】附答案详解
- 2026年枣庄运河职业学院单招综合素质考试题库参考答案详解
- 2026年四川甘孜康定职业学院高职单招职业适应性测试考试题库含答案详解(典型题)
- 2024年广东省惠州市单招综合素质考试题库附参考答案详解【达标题】
- 黄芩清热除痹胶囊调控LncRNA H19-APN-PI3K-AKT组合改善痛风性关节炎湿热蕴结证患者感受的机制研究
- 2024年海南椰岛职业学院高职单招职业技能考试题库附完整答案详解(必刷)
- 2025年青岛滨海学院高职单招职业技能考试模拟试卷含答案详解(达标题)
- 2026年新乡数字经济职业学院单招职业技能考试题库【考点梳理】附答案详解
- 2027年内蒙古自治区乌兰察布市高职单招职业适应性测试考试模拟试卷(有一套)附答案详解
- 2025中国网安(含中国电科三十所)校园招聘200人笔试历年备考题库附带答案详解
- 心理咨询行业深度调研及竞争格局与投资价值研究报告
- 中储粮笔试题库及答案
- 2026云南昆明滇池国家旅游度假区政务服务局政务服务中心聘综合窗口辅助性人员1人笔试备考试题及答案详解
- QCT 1288-2026《汽车控制芯片技术要求及试验方法》
- GB/T 1543-2026纸和纸板不透明度(纸背衬)的测定漫反射法
- 2026版《药物临床试验质量管理规范》GCP考试题库(含标准答案+解析)
- 新版2026年(全国一卷)高考英语阅读理解D篇 真题解读+答题技巧+变式练习(解析版)
- 癫痫诊疗指南(2025年版)
- 选矿车间安全培训内容
- 2026年广西壮族自治区桂林市中考物理试题(附答案)
评论
0/150
提交评论