1、项目一 第一个PHP网页PHP动态网站开发项目教程项目目标通过实例掌握NetBeans创建PHP项目的方法,熟悉IIS中PHP相关配置,实现如图所示的网页。(源代码:CDchapter1examplemyfirstphp)项目实现的PHP网页3相关知识项目实现内容导航认识Web应用程序认识PHPPHP开发环境配置4认识Web应用程序在Web 2.0时代,网站往往被技术人员称为Web应用程序。随着网络技术的不断完善和发展,网站的设计开发和桌面应用程序的开发越来越接近。传统桌面应用程序完成的业务也越来越多地迁移网络环境,通过Web应用程序来完成,如OA(办公自动化系统)、在线学习系统、教务管理系统
2、等。1Web应用程序的工作原理Web应用程序是一种典型的B/S(Brower/Server,浏览器/服务器)结构,如图所示。51Web应用程序的工作原理客户访问网站使用的浏览器称为客户端。Web应用程序包含的所有网页以及相关资源保存于Web服务器,Web应用程序的数据也可使用专门的数据库服务器进行存放和管理。当用户在浏览器中输入一个网址(URL),如http:/localhost/test.php,请求访问时,该请求被封装为一个HTTP请求,通过网络传递给Web服务器。Web服务器处理接收到的HTTP请求,将处理结果以HTML格式返回给客户端浏览器。如果在处理HTTP请求时需要访问数据库,We
3、b服务器会将相关数据请求提交给数据库服务器。由数据库服务器处理数据访问请求,并将处理结果返回Web服务器。Web服务器将相应的数据处理结果返回客户端。提示:在浏览器中选择“查看/源文件”命令所看到的代码便是Web服务器返回浏览器的一个HTTP请求HTML格式的响应结果。62Web应用程序客户端技术(1)浏览器浏览器作为网页在客户端的访问工具,它负责解析网页中的CSS和脚本语言、HTML/XHTML等内容,将最终结果显示在浏览器中呈现给用户。国内常见的浏览器有:IE、360浏览器、UC浏览器等。不同浏览器对HTML的支持略有不同,编写HTML文档时应注意不同浏览器之间的兼容问题。HTML(Hyp
4、erText Markup Language)即超文本标记语言。该文件为一个纯文本文件,它使用各种预定义的标记(tag)来标识文档的结构、文字、段落、表格、图片和超级链接等信息,浏览器负责解释各种标记如何展示给用户。(2)HTML72Web应用程序客户端技术例1.1一个简单的HTML文件(源代码:CDchapter1t1test1.html)。82Web应用程序客户端技术HTML文件可以使用浏览器直接打开查看显示结果。例1.1的HTML文件在IE浏览器中的显示结果如图所示。92Web应用程序客户端技术(3)XHTMLXHTML(Extensible HyperText Markup Langu
5、age)即可扩展超文本标记语言,是以HTML为基础,与HTML相似,但语法更加严谨。比如,前面的例子使用了标记在页面中实现换行。XHTML要求所有标记有结束标记,如的结束标记为。XHTML中的换行标记应该加上标记结束符号,为。HTML语法要求比较松散,网页开发人员使用起来比较灵活。但对机器而言,语法松散意味着处理难度增大。对于资源有限的设备,如手机,处理难度会更大。因此产生了由DTD定义规则,语法要求更加严格的XHTML。大部分常见的浏览器都可以正确地解析XHTML,几乎所有的网页浏览器在正确解析HTML的同时,可兼容XHTML。102Web应用程序客户端技术(4)XMLXML是Extensi
6、ble Markup Language的缩写,表示为可扩展标记语言,用于标记电子文档,使其数据具有结构化的标记语言。XML与HTML可以算得上是一对孪生兄弟,它们都由SGML(Standard Generalized Markup Language,标准通用标记语言)发展而来。HTML使用预定义的标记来告诉浏览器如何显示标记的内容。而XML的目的在于组织数据,使文档中的数据组织更加规范,便于在不同应用程序、不同平台之间交换数据。XML使用文档作为定义的标记来组织数据,如何解释标记由用户决定。XML文件是一个纯文本文件,便于网络传输。越来越多的应用程序使用XML文件来保存数据,如Java、微软的
7、.NET平台、各种Web服务器(IIS、Apache、Tomcat等)和各种数据库服务器(MySQL、SQL Server、Oracle等),均使用XML来保存相应的配置信息。112Web应用程序客户端技术例1.2一个IIS Web网站配置文件web.config。(源代码:CDchapter1t3web.config)。122Web应用程序客户端技术例1.2文件开头的标记表示这是一个XML文件,其version属性说明了XML版本号。这是一个IIS Web网站的配置文件,为网站指定了默认文档为index.php。可以使用浏览器直接打开XML文件,查看其中的数据组织结构,如图所示。132Web
8、应用程序客户端技术例1.3为例1.1中的HTML添加样式。(源代码:chapter1t3test3.html)CSS(Cascading Style Sheets)即层叠样式表,也称级联样式表。在HTML中,各种预定义的标记只能简单组织页面结构和内容,CSS则进一步通过样式来决定浏览器如何精确控制HTML标记的显示,如字体、颜色、背景和其他效果。(5)CSS142Web应用程序客户端技术例1.3的HTML文件中,使用标记定义了一个内部样式表,该样式表body标记内容的字体定义为“隶书”,即使用隶书字体显示body内容的文本。在标记中,用style属性为超链接定义了一个内联样式,并为超链接添加一
9、个边框。上面的HTML文件在IE中显示结果如图所示。152Web应用程序客户端技术客户端脚本语言通过编程为HTML页面添加动态内容,与用户完成交互。HTML页面中包含的脚本语言代码称为脚本。脚本可以嵌入HTML文档中,也可存储在独立的计算机文件中,使用时包含到HTML文档中即可。包含了脚本的HTML通常称为动态网页,即DHTML(Dynamic HTML,动态HTML)。常见的客户端脚本语言包括JavaScript、VBScript、Jscript和Applet等,其中JavaScript和VBScript使用最为广泛。(6)客户端脚本语言 JavaScript和Java没有直接关系,它由Ne
10、tscape公司开发,并在Netscape Navigator(网景浏览器)中实现。目前,网景浏览器因为技术竞争的原因已经退出了市场,但JavaScript却以顽强的生命力生存下来,并成为最受Web开发人员欢迎的客户端脚本语言。VBScript是Visual Basic Script的简称,即Visual Basic脚本语言,有时也缩写为VBS,它是微软的Visual Basic语言的子集。使用VBScript,可通过Windows脚本宿主调用COM,所以可以使用部分Windows操作系统的程序库。VBScript是IIS的默认源程序语言。162Web应用程序客户端技术例1.4在HTML中使用
11、JavaScript脚本显示对话框,代码如下。(源代码:chapter1t4test4.html)172Web应用程序客户端技术例1.4的HTML文件在IE中显示的结果如右上图所示。打开HTML文件后,在页面中单击“单击按钮测试JavaScript脚本”按钮,会打开下图所示的对话框。单击对话框中的“确定”或“取消”,则会打开相应的对话框提示单击一个按钮。183Web服务器Web服务器即WWW(World Wide Web,万维网)服务器,是网络服务器计算机中的一种应用程序,用于提供WWW服务。WWW服务即通过互联网为用户提供各种网页。网页是网站的基本信息单位,它通常由文字、图片、动画和声音等多
12、种媒体信息以及链接组成,用HTML编写,通过链接实现与其他网页或网站的关联和跳转。一个网站的所有网页和相关资源都需要上传到Web服务器所在的网络服务器计算机中,保存在Web服务器管理的目录中。Web服务器中的每个网页都有一个URL(Uniform Resource Locator,统一资源定位符),用户在客户端在浏览器地址栏中输入URL或其他页面的URL超级链接来访问网页。如果用户请求访问的是一个HTML文件,这个HTML文件直接作为HTTP响应返回。如果用户请求访问的是一个服务器端脚本文件,如PHP、JSP或ASP.NET文件,该脚本会被传递给响应的处理程序进行处理,处理结果最后产生一个HT
13、ML文件返回客户端。常用的Web服务器有IIS、Apache、Nginx、Tomcat及Weblogic等。194数据库服务器、数据库管理系统目前各种网站都会使用到数据库,而各种业务逻辑的本质几乎都涉及数据处理。为了高效并安全地处理大量数据,必须使用数据库管理系统。SQLite和Access等轻量级数据库可以直接访问,而Oracle、MS SQL Server和MySQL等大中型数据库则需要配置数据库服务器,由服务器内置的管理系统负责数据的建立、更新和维护。如果网页中包含了数据请求,数据请求由Web服务器提交给数据库服务器,数据库负责完成数据请求的处理,将处理结果返回给Web服务器,Web服务
14、器将最终处理结果封装在HTML文件中返回给用户。205Web服务器端编程技术Web服务器端编程技术种类很多,常用的有Microsoft的ASP/ASP.NET、Sun的JSP(Sun公司于2010年被Oracle收购,但不少技术人员仍习惯认为Java习惯技术属于Sun)和Zend的PHP。(1)ASP/ASP.NET(2)JSP(3)PHP21相关知识项目实现内容导航认识Web应用程序认识PHPPHP开发环境配置22认识PHPPHP早期为Personal Home Page的缩写,即个人主页,现已经正式更名为“PHP:Hypertext Preprocessor”,即超文本预处理器。注意,PH
15、P并不是“Hypertext Preprocessor”的缩写,这种在定义中包含名称的命名方法称作“递归缩写”。PHP是一种跨平台、服务器端、可嵌入HTML文件的脚本语言。每一版本的PHP均提供了UNIX/Linux和Windows两种版本,所以PHP开发的Web应用程序可部署在UNIX、Linux和Windows操作系统之中的Web服务器上。嵌入了PHP代码的HTML文件称为PHP文件,扩展名通常为.php。PHP文件在Web服务器中被解析,根据用户需求动态生成HTML文件。1PHP发展历史1994年PHP/FI1995年PHP 21998年PHP 32000年PHP 42004PHP 52
16、015PHP 7231PHP发展历史2015年6月12日,PHP开发团队发布PHP 7.0.0 Alpha 1,标志着PHP 7系列的开发。PHP 7.0.0 Alpha 1以最新的Zend引擎为基础,包含了下列新的特性。其运行速度将是PHP 5.6的两倍。一致的64位支持。许多致命错误可以通过Exceptions来处理。删除了一些过时和不再支持的SAPI和扩展。增加了null连接运算符“?”和联合比较运算符“”。增加了Return 和Scalar类型申明。增加了匿名类。提示:PHP 7.0.0 Alpha 1只是提供给开发人员进行测试,本书将以PHP 5.6.10为基础进行讲解。242PHP特点与JSP、ASP/ASP.NET等Web服务器端编程技术相比,PHP具有下列显著特点。0104PHP特点开源免费跨平台性强效率更高支持多种数据库多种Web服务器支持25相关知识项目实现内容导航认识Web应用程序认识PHPPHP开发环境配置26PHP开发环境配置PHP是一种服务器端的Web应用程序脚本语言,其开发环境主要包括:PHP解释器、Web服务器、数据库服务器及编辑器。PHP支持Windo