1、PHP 讲义 第 1 页 共 92 页php 程序员菜鸟成长手记php 入门教程PHP 讲义 第 2 页 共 92 页目录序 4第一章 PHP 简介 6第一节 PHP 简介 .61.Web 程序工作原理 .62.PHP 简介 .9第二节 PHP 的开发环境的搭建 .91.程序编写,软件开发工具软件的选用 92.服务器软件的安装和配置 10第三节 实验一 PHP 开发环境的搭建 .110.实验目的 111.实验准备 122.PHP 的安装和配置 .123.Apache 的安装和配置 124.测试 Apache 对 PHP 的支持 .135.MySQL 软件的安装和服务的启动 14第二章 Web
2、客户端技术 16第一节 Web 客户端工作原理 .161.浏览器工作原理 162.HTML 工作原理 163.JavaScript 工作原理 .20第二节 Web 客户端基本技术 .21第三节 实验二 Web 客户端技术 .34第三章 PHP 语法 36第一节 基本语法 361.最简单的 PHP 程序 362.剖析最简单的 PHP 程序 373.常用变量处理函数 374.访问客户端变量的方法 405.PHP 变量的作用域 .416.超全局变量数组 417.数据类型 438.运算符 479.函数 4810.session 的应用 51第二节 PHP 编程要点 .531.流程控制结构 532. P
3、HP 嵌入 HTML 或 JavaScript 中 533.用 PHP 输出 HTML 或 JavaScript554.自服务程序 56第三节 实验二 PHP 语法实验 .57第四章 MySQL 数据库 .58第一节 MySQL 的基本使用 581.数据库基础知识 582.MySQL 简介 583.MySQL 的命令操作 584.MySQL 的图形化客户端工具软件 61第二节 用 PHP 操纵 MySQL 62PHP 讲义 第 3 页 共 92 页1.PHP 数据类型:资源型 .622.PHP 中用于操纵 MySQL 数据库的函数 633. PHP 操纵 MySQL 实例 .674.MySQL
4、 的常用列类型 685.用在查询中的运算符和函数 70第三节 实验四 MySQL 实验 771.MySQL 基本命令练习 772.使用 phpMyAdmin 79第五章 Web 软件开发 80第一节 系统分析和系统设计 801.用户需求 802.系统分析与设计 81第二节 系统实施和系统测试 89第三节 实验 89PHP 讲义 第 4 页 共 92 页序编写一本有关 PHP 的简明教程,对 PHP 选修课程而言,是很必要的。PHP 语言是开放源代码语言,由 PHP 开发小组及全世界的 PHP 爱好者时刻进行着维护和更新,不断增强其功能,所以在网络上不断地会涌现大量的 PHP 的电子参考手册,在
5、书店和图书馆里,有关 PHP 的图书也是汗牛充栋,日新月异,这些参考手册和图书,其内容越来越丰富,在描述上不可谓不详尽,但是这些“详尽”的细节描写,对初学者而言,都显得“大而全” ,看起来犹如走进了迷宫,总感觉不甚明了。笔者在教学实践中,曾拿它们直接作为教材使用,效果不是很好,感觉它们不便于直接作为教材使用,尤其是对课时 40 左右的PHP 选修课程而言。本讲义是作者根据自己在实际 Web 软件开发工作中,对使用 PHP 进行 Web 软件开发,及实际教学经验的一个简明总结,结合相关参考文献,整理,编写而成,力求简明扼要,以适合选修课教学实际的需要,所以,本讲义只包含了初学者入门所需的必要的知
6、识和实践内容。由于本讲义描述中,含有较多的个人见解和体会,不足之处,请各位专家、老师和读者不吝指正。参考文献:PHP 手册(官方最新版: http:/ PHP Documentation Group 编写,全面、权威,不断更新,适合高级编程人员参考。PHP 手册,台湾星空浪子翻译版:主要针对 PHP4 而编写,内容简易,适合初学者使用,只是有些台湾用语。PHP 程序设计,Rasmus Lerdorf,中国电力出版社,2003:PHP 创始人、PHP 开发小组领军人物Rasmus Lerdorf 的经典著作,本书是一本全面、详尽、权威的国外经典译著。Web 数据库基础教程,魏善沛编著,中国铁道出
7、版社,2003。PHP 经典实例,Sterling Hughes 等,中国电力出版社,2003:由 PHP 开发小组核心人物 Sterling Hughes 等著,本书也是国外经典译著。PHP 高级开发技术与应用,曹轶群等, 清华大学出版,2002PHP 讲义 第 5 页 共 92 页前言1.课程的性质和任务课程名称:PHP 程序设计语言,英文名称:The PHP Programming language课程编号:101122120(Web 开发技术)课程性质:专业选修课、专业技术课课程任务:是对高年级大学生进行专业技术教育2.课程的学习目标对 Web 软件的开发:理解基本原理,树立正确理念,
8、掌握基本技能3.预备知识:计算机应用基础、C 语言程序设计4.如何学习,如何考核化繁为简,精讲精学,循序渐进 ,登堂入门实验为主,注重实践,网上自助学习开卷考试,独立完成5.学习进度安排周学时:6,总学时:42,学分:4学习进度表(按 1 班上课顺序排布,2 班与此内容同,顺序根据场地作相应调整)6.重点和难点Web 开发(Web 程序工作原理,相关概念)PHP 开发环境搭建(Apache 的配置)PHP 基本语法PHP 操纵 HTML、JavaScript(嵌入、互相嵌入)PHP 操纵数据库(相应的函数)基于 PHP 的 Web 应用系统设计(规划和分析)7.习题、作业、课堂讨论:均围绕实验
9、进行8.学习参考材料(1)入门学习本教程(2)高级参考Rasmus Lerdorf, PHP 程序设计, 中国电力出版社,2003,定价:68 元( 国外经典)Sterling Hughes 等, PHP 经典实例, 中国电力出版社,2003,定价:39 元(国外经典)曹轶群等,PHP 高级开发技术与应用,2002, 清华大学出版社,定价:32 元PHP 讲义 第 6 页 共 92 页第一章 PHP 简介第一节 PHP 简介1.Web 程序工作原理(1)Web 一词的含义network:【计算机】电脑网络,网Web:【计算机】万维网(World Wide Web),互联网(Internet)W
10、eb 程序,顾名思义,即可工作在 Web 上的程序。实际上,它也可工作于企业内网(内联网:Intranet)、企业间网(外联网:Extranet),只不过它在 Web 上更具应用优势,更为常见,故人们称它为 Web 程序。(2)单机程序工作原理单机,即不连接到其他计算机的计算机,不在网络中。两单机 A、B ,只在 A 上安装有程序 X,若要在 B 上得到 X 的运行结果,必须在 B 上安装一遍 C,然后运行之,若 B 类的计算机比较多,则需要逐一安装运行,非常麻烦;它们之间不能直接进行通信和协作。如图 1 所示。图 1 单机程序工作示意图(3)客户机/服务器程序工作原理将单机连成网络,如将 A
11、 与 B 连成网络,则可以使它们之间提供服务,如 A 向 B 提供服务。常见的服务是文件共享,FTP 文件下载等。我们把提供(响应)服务的计算机称作服务器(Server),接受(请求)服务的计算机称作客户机(Client),也叫工作站(Workstation) 。服务器一般用性能较高的计算机担当。客户机/服务器程序的工作原理如图 2 所示。图 2 客户机/服务器程序的工作原理服务器和客户机的角色可以转换。一台计算机,可以对自己提供服务,这时,它既是服务器,又是客户机。如,计算机 A 把自己的文件夹 a 共享,然后在网络上找到 A,则可以下载 a,即自己对自己提供了服务,自己请求并响应了服务。客
12、户机/服务器的这种计算机间的协作方式,称作 C/S 方式,或 C/S 架构。C/S 程序分为两部分:服务器端部分和客户机端(以后简称客户端)部分,分别称为服务器端程序(或服务程序)和客户端程序(或客户程序) 。对于客户端程序,对每一个客户机,也都需要分别安装,这一点与单机程序的分发相同,也很麻烦。但是,安装好了客户端程序后,就可以通过通信线路与服务器交互,或通过服务器,与其他客户机通信。典型的例子是大家常用的聊天程序 QQ,如图 3 所示。PHP 讲义 第 7 页 共 92 页图 3 C/S 程序 QQ 的工作原理(4)浏览器/服务器程序工作原理若通过客户机中的浏览器(Browser) ,向服
13、务器发出请求,接收其响应的结果,那么,这时,我们称这样的协作方式为 B/S 方式,或 B/S 架构,其工作原理如图 3 所示:图 4 浏览器/服务器程序的工作原理这时,客户端程序就是浏览器,而浏览器的安装是随着操作系统的安装完成的,不需要用户额外安装。大多数情况下,大多数人用的操作系统是 Windows 操作系统,对他们而言,使用 B/S 程序(如上网看新闻,收发电子邮件) ,可不需要安装专门的客户端程序,直接在浏览器中操作即可。这使得 B/S 程序的维护十分方便,因为不用管客户端程序,只要维护好服务器端程序即可。人们说当今是一个网络时代,实际上着重指得是互联网时代,也就是 Web 的时代。人
14、们使用这种 B/S 程序比较多,是造成这种叫法的一个重要缘故。本课程中的 Web 程序,就是指这种 B/S 程序。(5)C/S 、B/S 中服务器的组成服务器,是担负服务任务的机器。这些服务任务一般专门的软件来完成。一般地,把具有某种服务功能的服务器软件及其所在的机器,都统称 XX 服务器(XX 表示某种具体服务) 。这些软件可以集中于一台机器中(如图5) ,这样的机器可以称为集中式服务器;也可以单独存在于某台机器中(如图 6) ,这样的机器可以称为独立式服务器,多个独立式服务器可组成服务器群或矩阵(台湾词为“阵列”) 。图 5 集中式服务器PHP 讲义 第 8 页 共 92 页图 6 由独立
15、服务器组成的服务器群按照服务任务,常见的几种服务器软件如表 1 所示。表 1 几种常见服务器软件服务器软件类别 服务器软件举例 功能Web 服务器软件 Apache、IIS、PWS 等接收来自浏览器的任务请求,分派任务给其他服务器软件,接收其他服务器软件对任务的处理的结果,将该结果返回给浏览器服务器端脚本解释软件(一般与 Web 服务器软件同处于同一台机器上)PHP、ASP 等接收来自 Web 服务器软件分派给自己的服务器端脚本执行任务;进行脚本的语法分析,若语法有错误,则向 Web 服务器返回出错信息,否则,执行脚本,将解析结果/执行结果返回给Web 服务器软件数据库服务器软件 MySQL、
16、Oracle、MS SQL Server 等 接收来自其他服务器软件的数据处理任务请求,执行该任务,将执行结果返回给请求者电子邮件服务器软件 MS Exchange、Sendmail 等 接收来自其他服务器软件的邮件处理任务请求,执行该任务,将执行结果返回给请求者服务器端脚本:用服务器端编程语言编写的程序。服务器端编程语言:只运行在服务器端,被服务器所解释和执行的编程语言,如 PHP 语言。(6)B/S 程序工作的具体过程说明:在以后的 B/S 程序图示中,通信线路不再特别表示。图 7 B/S 程序工作过程示意图(7)PHP 程序工作的具体过程图 8 PHP 程序工作过程示意图具体过程是 Ap
17、ache、PHP 、浏览器之间的协作过程:用户通过浏览器向服务器请求 PHP 文件(如在地址栏输入:http:/211.64.40.187/index.php) ,Apache 在服务器上的用户文档发布目录下查找浏览器所请求的 PHP 文件,若找不到,则向浏览器返回错误信息,否则,将其PHP 讲义 第 9 页 共 92 页提交给 PHP 解释器解释执行,PHP 解释器对该 PHP 文件进行语法分析,若发现语法错误,则经 Apache 返回错误信息(以浏览器能识别的代码表示)到浏览器,否则执行该 PHP 程序(可能包含对数据库 MySQL 的操作),将 PHP 程序执行结果(以浏览器能识别的代码
18、表示)经 Apache 返回到浏览器,浏览器对返回的结果进行解释、执行,执行的结果显示在浏览器窗口中。如果浏览器所请求的文件不是 PHP 文件,而是 HTML 文件(.htm 文件)或 JavaScript 文件(.js 文件) ,该过程将简化:Apache 在服务器上的用户文档发布目录下查找浏览器所请求的 HTML 文件或 JavaScript 文件,若找不到,则向浏览器返回错误信息,否则,将其返回给浏览器,浏览器对返回的结果进行解释、执行,执行的结果显示在浏览器窗口中。2.PHP 简介PHP,即“PHP: Hypertext Preprocessor”,是一种被广泛使用的开放源代码多用途脚
19、本语言,尤其适用于 Web 开发并可以嵌入到 HTML 中去。其语法利用了 C,Java 和 Perl,非常容易学习。该语言的主要目标是让 Web 开发人员可以很快写出动态生成的网页,但 PHP 的功能远不止如此。一个简单的 PHP 程序:该程序运行的结果是在网页上输出了一个内容为 hello,world 的字符串。PHP 是一种语法简单、功能强大的网络编程语言。在语法格式上,PHP 借鉴了广泛流行的 C、Java 和 Perl 等编程语言的特点,非常类似于 C 语言,但比 C 语言更简单,易学和易用,因此特别适合于学习过 C 语言,有志于网络编程的人学习和使用。在功能上,它提供了丰富的函数库
20、,支持复杂字符串处理,正规表达式和图形处理,可根据用户请求将服务器的数据轻松地产生动态网页,支持目前几乎所有流行的数据库系统,如 Oracle、SQL Server、 MySQL、mSQL、Informix、SyBase、ODBC、PostgreSQL 以及 dBase 等。在在可移植性上,PHP程序可在 Windows 下快速开发,代码甚至不加修改即可运行在 Unix、Linux 上。本课程中的 PHP 程序,就是指使用这种 PHP 语言编写的程序。它只能被服务器所解释执行,只能运行于服务器端,用户在浏览器中看到的,只是经服务器解释后,返回给浏览器的 HTML 等客户端代码(可从浏览器的“查
21、看-源文件”菜单中看到) ,这些代码是由浏览器解释执行的,执行的结果,显示在浏览器窗口中,形成网页。所以,在客户端,看不到 PHP 代码,这也是 PHP 语言写成的代码比较安全的一个原因。第二节 PHP 的开发环境的搭建从图 8 中可以看出,要使 PHP 程序能够正常工作,必须:(1) 选用合适的程序编辑软件,以便进行程序的编写;(2) 为其在服务器上配置好一个运行环境:安装和配置好以下软件,使它们能够正常协作:Apache、PHP 、MySQL,以便进行程序的测试和运行。以上两点构成一个完整的 PHP 开发、测试和运行环境。其中, (1)的 3 个软件部署在服务器上, (2)的软件部署在客户
22、机上。为方便大家学习和理解整个环境的搭建过程,本课程的实验条件是人手一机,每台机器既作服务器又作客户机,整个环境的搭建工作可在一台机器上完成。以上两点构成一个完整的 PHP 开发、测试和运行环境,其根本目的是为了学习使用 PHP 语言进行 Web 程序编写和软件开发,所以,我们把这个环境的搭建工作称之为 PHP 开发环境的搭建。1.程序编写,软件开发工具软件的选用(1)有关工具软件PHP 讲义 第 10 页 共 92 页这些工具软件用于编写,修改源程序文件。我们的源程序文件都是 ASCII 码文件(纯文本文件) ,所以,只要是能够处理纯文本的工具软件,都可选用。常用的编辑软件有:记事本。为了提
23、高效率,常使用一些专业工具软件,如 UtraEdit,DreamWeaver,不建议使用 FrontPage(它对 PHP 的支持不好) 。 记事本:常用于简单的代码编辑。 UltraEdit10 简体中文版:短小精悍,代码编辑功能强大,编程高手的利器 Dreamweaver MX 中文版:图形化编辑环境,速度慢,功能多,常用于复杂网页设计和网站管理。注意该软件提供了“代码” 、 “代码/ 设计 ”、 “设计”三种视图:“代码”视图以全部是源代码的方式供用户编辑使用,常用于代码(服务器端代码或客户端代码)的编写,修改;“设计”视图以可视化的方式供用户使用,常用于设计网页界面,以减少手工撰写客户
24、端代码的工作量;“代码/设计”视图是上述两种方式的结合。(2)源文件扩展名无论用哪种工具软件编写源程序文件,若文件中含有 PHP 代码,必须确保文件的扩展名,与在 Apache 配置中的 PHP 文件的扩展名的设定一致;若不含 PHP 代码:若仅含有 HTML 代码,一般以.htm 为扩展名;若仅含有 JavaScript 代码,这种文件常作为.htm 文件的包含文件(引用文件,类似于 C 程序文件中的头文件)一般以.js 为扩展名;若含 HTML 代码和 JavaScript 代码,一般以.htm 为扩展名。(3)开发工具软件的使用这些开发工具软件,简单易用,用户稍加学习即可掌握。对于 Dr
25、eamweaver,操作类似 WORD,另外,它自带学习教程,可以参考。2.服务器软件的安装和配置对于 Windows 下多数软件的安装,我们是通过执行该软件的安装程序(setup.exe、install.exe 、软件文件名.exe) ,由安装程序负责具体的安装过程。这个过程中,安装程序做的工作一是系统注册:把该软件的一些系统文件,复制或移动到操作系统的有关系统目录中,实现与操作系统的接口,便于操作系统使用;二是将自身的程序文件、数据文件等复制到本软件的安装目录下,用于本软件的运行。(1)PHP 语言解释器软件的安装和配置该软件没有安装程序,所以具体的安装过程需要用户来完成。不过过程也十分简
26、单:解压缩该软件包至安装目的目录,将系统文件 php4ts.dll(PHP 系统扩展函数库)和 php.ini(PHP 配置文件)分别放到操作系统目录下的相应的位置即可。(2)Apache 的安装和配置大体经过安装-配置两大步骤完成。配置大体经过编辑配置文件- 启动服务完成。 安装:其安装过程由其安装程序进行,启动安装程序后,按提示操作即可。 配置目的:向 Apache 说明清楚 PHP 的有关情况,以便实现二者的协作。 配置方法:主要通过一个配置文件中有关参数的修改或添加进行。所谓“修改” ,即对该文件中已经存在的参数,修改其参数值;所谓“添加” ,即将该文件中缺少的参数和参数值增加到该文件
27、中相应位置,为了省事,也可以放到该文件的最后。该文件名为 httpd.conf,存在于 Apache 安装目录下的 conf 目录下,是一个纯文本文件,可用记事本打开修改。也可以通过开始菜单中 Apache 程序组中的“Edit Configuration”打开该文件,进行配置操作。注意每次配置变动后一定要保存,并启动或重新启动 Apache 的服务,所做的最新配置才会起作用。 有关参数和参数值的说明1)格式多是这样的单独的行:#参数名 参数值行首的#表示注释,应去掉才会使配置起作用。2)参数和参数值的含义、作用表 2 Apache 配置参数设定示例路径:PHP 安装路径d:/php ;发布文
28、档(即文件)主目录 d:/www参数名和参数值 操作 作用PHP 讲义 第 11 页 共 92 页 BindAddress 服务器机器 IP 修改 进行地址绑定(指定服务器地址) LoadModule php4_module d:/php/sapi/php4apache.dll 添加指名将 PHP 配置为 Apache 的模块( Apache module)方式进行工作时的 PHP 语言解释器 Port 80 修改 指定 Apache 对外提供 Web 服务的通信端口 ServerAdmin 服务器管理员邮箱(如 ) 修改 当发生错误时送回客户端浏览器的管理员信箱 ServerName 服务器
29、的计算机名称 修改 指明主机名称 DocumentRoot “d:www“ 修改 指明向客户端提供 Web 服务的发布文档主目录 修改 发布文档主目录定义,该处目录的值应与中的一致ScriptAlias /php/ “d:/php/“ AddType application/x-httpd-php .php Action application/x-httpd-php “/php/php.exe“ 添加指明 PHP 脚本语言名称和 PHP 脚本语言解释器的路径指明 PHP 脚本扩展名指明 PHP 脚本解释器 (PHP 以非模块工作时起作用) DirectoryIndex index.php 修
30、改 指定默认文档(主页文档,只请求服务器地址就响应的文档 ) 有关服务的操作:服务,是一直运行,监听来自其他程序(客户端)的请求,接收请求,处理请求(自己处理或提交其他程序处理) ,返回处理结果的一种运行着的程序,一种进程。一般运行于操作系统后台。有关Apache 的服务操作,通过开始菜单中 Apache 程序组中的有关命令进行: Install Service:在操作系统中注册服务 Uninstall Service:在操作系统中删除服务 Start Service:启动服务 Restart Service:重新启动服务 Stop Service:停止服务注意:服务的启动、重新启动、停止,必
31、须以在操作系统中注册了服务为前提;服务的启动、重新启动、停止过程中有 Apache 的消息反馈。(3)Apache 与 PHP 的协同测试测试目的是检查二者是否能够正常协作。具体来说,是检验配置后的 Apache、PHP、浏览器是否具备了这样的协作能力:用户通过浏览器向服务器请求 PHP 文件(如在地址栏输入:http:/211.64.40.187/index.php) ,Apache 在服务器上的用户文档发布目录下查找浏览器所请求的 PHP 文件,若找不到,则向浏览器返回错误信息,否则,将其提交给 PHP 解释器解释执行,PHP 解释器对该 PHP 文件进行语法分析,若发现语法错误,则经 A
32、pache 返回错误信息(以浏览器能识别的代码表示)到浏览器,否则执行该 PHP 程序(可能包含对数据库 MySQL 的操作),将 PHP 程序执行结果(以浏览器能识别的代码表示)经 Apache 返回到浏览器,浏览器对返回的结果进行解释、执行,执行的结果显示在浏览器窗口中。做法是,在服务器上用户的发布文档目录下,放置一个含有 PHP 代码的文件,即 PHP 程序,通过客户端浏览器,向服务器请求这个文件,若浏览器能得到正确的来自服务器的结果,则表明二者安装和配置成功,否则,应根据出错信息,修改配置。第三节 实验一 PHP 开发环境的搭建本实验对 Windows95 及其以上版本的 Window
33、s 操作系统机器通用。0.实验目的(1)能够快速部署 Windows 下的开发环境,满足学习,使用 PHP 对于开发和服务环境的需要。(2)加深对 B/S 程序工作原理的理解PHP 讲义 第 12 页 共 92 页1.实验准备(0)知识准备:Web 程序工作原理(本章第一节)(1)PHP 服务器环境需要以下 3 个服务器端系统软件 Web 服务器软件:Apache 1.3.14 PHP 语言解释器软件:PHP 4.0.4 数据库服务器软件:MySQL 3.23.43(2)开发工具软件:记事本:Windows 自带。UltraEdit10 简体中文版(压缩包文件: uedit10.zip)Mac
34、romedia Dreamweaver MX 中文版:已安装好注: PHP 相关软件、开发工具的获得:在我的网站上的有关网页上下载。我的网站:http:/(3)操作系统软件:服务器和客户机上均为 Windows具体到德州学院计算机系的机房环境,请在 Windows 2000 Professional 环境下做(Win98 下已经搭建好,是为以后章节的学习使用的,无实验意义)(4)实验中的路径说明为说明问题的简单起见,路径为比较简单的示例路径,但已经过测试。实际运用时,路径完全可根据自己需要设定。2.PHP 的安装和配置(1)安装将 PHP-4_0_4-Win32.rar 解压缩到 d:php
35、下将 d:php 下的 php4ts.dll 移动到 c:操作系统安装目录system 下将 d:php 下的 php.ini-dist 复制到 c:操作系统安装目录 下,更名为 php.ini注意:操作系统安装目录,具体位置见表 3;php.ini 是 PHP 的配置文件。表 3:操作系统安装目录操作系统 操作系统安装目录Windows95 windowsWindows98 windowsWindows me windowsWindows XP windowsWindows NT 系列 winntWindows 2000 系列 winntWindows 2003 windows(2)配置:通
36、过修改 php.ini 中的参数来实现。对 MySQL 而言,若无特殊要求,一般无须配置。因为 PHP在 php.ini 中已经做好了对 MySQL 的配置,所以一般无须修改。3.Apache 的安装和配置(1)安装软件:双击 Apache_1_3_14_win32.exe,按照提示,安装到 d:apache 下,即完成安装。(2)配置服务:单击 开始-程序- Apache Web Server- Management- Edit configuration,打开Apache 的配置文件 httpd.conf,按表 4 提示进行配置,完毕后,保存。注意: 所谓“修改” ,即对该文件中已经存在的
37、参数,修改其参数值;所谓“添加” ,即将该文件中缺少的参数和参PHP 讲义 第 13 页 共 92 页数值增加到该文件中相应位置,为了省事,也可以放到该文件的最后 每处的配置要想起作用,必须将行首的#号(注释符号)去掉 描述以 httpd.conf 文件的行文顺序进行 表 4 中路径、地址、主机名、信箱等,实际配置时请根据自己情况进行 每次配置变动后一定要保存,并启动或重新启动 Apache 的服务,所做的最新配置才会起作用表 4 Apache 配置参数设定示例路径:PHP 安装路径d:/php ;发布文档(即文件)主目录 d:/www序号参数名和参数值 操作 作用 BindAddress 服
38、务器机器 IP 或 localhost(127.0.0.1) 修改 进行地址绑定(指定服务器地址)LoadModule php4_module d:/php/sapi/php4apache.dll 添加 指明将 PHP 配置为 Apache 的模块( Apache module)方式进行工作时的 PHP 语言解释器 Port 80 修改 指定 Apache 对外提供 Web 服务的通信端口 ServerAdmin 服务器管理员邮箱(如 ) 修改 当发生错误时送回客户端浏览器的管理员信箱 ServerName 服务器的计算机名称 修改 指明主机名称 DocumentRoot “d:/www“ 修
39、改 指明向客户端提供 Web 服务的发布文档主目录 修改 发布文档主目录定义,该处目录的值应与中的一致ScriptAlias /php/ “d:/php/“ AddType application/x-httpd-php .php Action application/x-httpd-php “/php/php.exe“ 添加指明 PHP 脚本语言名称和 PHP 脚本语言解释器的路径指明 PHP 脚本扩展名指明 PHP 脚本解释器 (PHP 以非模块工作时起作用) DirectoryIndex index.php 修改 指定默认文档(主页文档,只请求服务器地址就响应的文档 )说明:处:loca
40、lhost 指服务器机器本机。如果机器没有插网线,请选择 localhost,否则有可能会提示说找不到地址。处上面有说明:This should be changed to whatever you set DocumentRoot to教学网站上有 Apache 配置文件样本可供参考。(3)Web 服务的安装和启动 安装 Apache 服务将 Apache 在 Windows 操作系统服务中注册。单击:开始程序Apache Web ServerApache as a serviceInstall service。服务只需要注册一次。 启动 Apache 服务单击:开始程序 Apache We
41、b ServerApache as a service Start Service,启动服务。还可以停止,重新启动服务。说明:在 Windows2000 Professional 或 Windows XP 中,也可通过开始控制面板管理工具服务,根据需要,对 Apache 服务进行启动、停止、重新启动等操作。4.测试 Apache 对 PHP 的支持(1)测试目标:检查二者是否能够正常协作(2)测试方法用记事本或 uedit 编写测试脚本,存为 d:wwwindex.php,内容为:注意:index.php 被配置成了 Apache 的默认文档phpinfo()是 PHP 内置函数,用来显示 P
42、HP 和 Apache 配置信息。PHP 讲义 第 14 页 共 92 页在浏览器中敲入 http:/你的机器的 IP 地址或 localhost(127.0.0.1),回车后若显示类似图 9 的 PHP 配置页面(以Win98 下为例) ,则说明你的配置达到了上述的测试目标,Apache 与 PHP 能够正常协作;若不显示类似画面,则配置有误,此时你的 Apache 不能够识别 PHP 脚本,需更改配置。图 9 Apache 配置成功(图中 PHP 以 4.3.4 版本为例)5.MySQL 软件的安装和服务的启动(1)安装将 mysql-3.23.43-win.zip 解压缩后,双击 set
43、up.exe,按照提示,进行安装。根据指定安装路径的不同,安装可采取的方式有:默认安装:安装过程中不指定安装路径,采用默的 c:mysql。采用该种方式安装,一路按“下一步”按钮即可完成。定制安装:安装过程中指定自己的安装路径(如:d:/mysql) ,而不是采用默的 c:mysql。采用该种方式安装完成后,需要做一个配置文件,将 MySQL 的有关信息向操作系统特别声明一下。具体方法是:用记事本或uedit 创建一个文件 my.ini 保存在你的操作系统安装目录下,该文件内容如下mysqldbasedir=d:/mysql/datadir=d:/mysql/data/注意:本实验采用定制安装
44、方式(2)启动服务程序双击 d:mysqlbin 下的 winmysqladmin.exe(MySQL 服务程序) ,这样就会在操作系统的后台服务中注册并启动 MySQL 服务程序(默认情况下,每次操作系统启动时自动启动该服务,在 Windows2000 的服务中可更改其启动方式)(3)MySQL 数据库连接测试:通过 MySQL 的客户端程序 mysql.exe,测试其与服务程序的连接是否正常,服务程序是否能够正常工作。启动客户端程序 mysql.exe:在命令提示符或 MS-DOS 下,进入 d:mysqlbin,键入命令 mysql 回车。若出现类似如下结果:Welcome to the
45、 MySQL monitor. Commands end with ; or g.PHP 讲义 第 15 页 共 92 页Your MySQL connection id is 26 to server version: 3.23.43Type help; or h for help. Type c to clear the buffer.mysql则表明本测试成功。键入 exit 回车,可退出与 MySQL 服务器的连接至此,我们已经成功完成了 PHP 脚本解释器软件、Web 服务器软件 Apache、数据库服务器软件 MySQL 的部署。对于操作系统软件和开发工具软件,读者可自行完成部署。
46、本实验到此结束。PHP 讲义 第 16 页 共 92 页第二章 Web 客户端技术第一节 Web 客户端工作原理1.浏览器工作原理(1)Web 客户端工作原理Web 客户端,在本课程中,显然就是指浏览器(Browser)端。任何应用系统都必须有一个供用户操作的界面,即用户界面。浏览器的工作,从整个 B/S 程序来看,是用户与整个 B/S 程序打交道的一个界面(接口) ,即人机界面(接口) 、用户界面,它的任务是: 收集用户输入的数据(如用户数据:http:/211.64.32.2/dsks/index.php ) 将用户数据发送到服务器(向服务器请求该用户对服务器的请求) 接收服务器返回的响应
47、(用浏览器能认识和执行的代码即客户端代码表示,如 HTML 代码,JavaScript 代码等) 解释,执行这些代码,将结果显示在浏览器窗口中可见,浏览器扮演的,是(多数情况下是远程的)服务器在用户那里的一个代理(Agent)的角色。这个代理,具有收集消息,请求响应和解释其领导(服务器)发回的指示的作用。(2)Web 客户端代码无论是组织用于收集用户数据的界面,还是解释来自服务器的指示形成结果界面,都是用 Web 客户端代码表示的。常用的 Web 客户端代码使用 HTML 语言或 JavaScript 语言编写的,分别称为 HTML 代码或 JavaScript 代码。另外还有 CSS、XML
48、 等语言。本课程仅介绍 HTML 语言或 JavaScript 语言。2.HTML 工作原理(1)HTML 简介HTML:Hyper Text Markup Language,超文本标记语言。20 世纪 80 年代末,在欧洲粒子物理实验室(CERN:the European Laboratory for Particle Physics)工作的Tim Berners-Lee(人称 WWW 之父)通过研究发现:人们的视觉处理是以页为基础的。于是他得出了一个结论:电子资料应以页的方式呈现。以此为出发点,他使用超文本为中心的管理方式来组织网络上的资料,并提出了建立、存取与浏览网页的方法;建立了超文本
49、标记语言;设计了超文本传输协议(HTTP:Hypertext Transport Protocol) ,用于获取超链接文件;使用统一资源定位器(URL:Uniform Resource Locator)来定位网络文件、站点或服务器。(2)HTML 工作原理(1)HTML 本质HTML 不是程序语言,而是一种标记语言。所谓标记,在有的书上也叫标签,从面向对象的角度而言,就是对浏览器对象的标识的意思。它用来控制文字、图片等浏览器的子对象在浏览器中的表现,以及如何建立文件之间链接的标记,这些标记均放在文本格式的文件中。而程序与之最大的不同,就是可用来控制操作系统或应用程序执行并完成某项作业。超文本标记语言的文档应该尽量做到,从形式上看,无论在任何操作系统的任何浏览器上打开都具有相同的效果。(2)HTML 的基本结构其基本结构分为三部分: 版本声明,即序(Prologue) 头部(Head)PHP