PHP与Ajax是目前Web应用程式开发领域的流行技术,掌握这两项技术是大多数企业对网页设计人员的基本要求。本书由浅入深、系统地介绍了PHP的相关知识以及基于jQuery的Ajax技术,显着降低了Ajax的入门难度。在叙述有关原理时安排了大量的相关实例。本书分为10章,内容包括Web应用程式基础知识, PHP语言基础,Web互动编程,PHP访问资料库,JavaScript和jQuery客户端编程,Ajax技术基本原理,Ajax方式访问资料库等。附录中安排了PHP的相关实验。
本书适合作为高等院校各专业“Web编程技术”或“动态网页设计”等课程的教材,也可作为Web编程的培训类教材,还可供网页设计与开发人员参考使用。
基本介绍
- 书名:PHP Web程式设计与Ajax技术
- 作者:唐四薪
- ISBN:978-7-302-34473-5
- 类别:PHP书籍
- 页数:489
- 定价:49.5元
- 出版社:清华大学出版社
- 出版时间:2014年1月
- 开本:16开
版权资讯
书名:PHP Web程式设计与Ajax技术
作者:唐四薪
出版社:清华大学出版社
ISBN:978-7-302-34473-5
定价:49.5元
出版时间:2013年12月
字数:744千字
页数:492页
前 言
PHP目前仍然是开发Web应用程式最理想的语言。相比其他Web程式语言,PHP具有简单易学,功能强大、成本低廉、安全性较高和运行环境易于配置等优点,是初学者学习Web应用程式设计的理想入门语言,且能够用来製作企业级的Web应用程式及动态网站。
近几年来,PHP在国外的发展非常迅速,许多大型的电子商务网站(比如淘宝网等)都採用PHP作为网站开发的语言;同时,通过对众多软体企业的调查发现,各种企业对于PHP开发人才的需求缺口很大。但与此不相称的是,PHP在我国高校教学中并不普遍。我国高校中很多专业都已开设了Web编程方面的课程,但是该门课程的内容以讲述ASPNET、ASP或JSP语言为主,可见PHP尚未在高校教学中取得足够的重视,但PHP的培训课程却在大量培训机构中广泛开设。
为了能编写一本适合于高校教学的PHP教材,也为了能方便读者自学,本书在写作时注重解决以下一些问题。
(1)对于讲解PHP的运行环境来说,本书主要介绍安装AppServ集成运行环境,而没有单独介绍PHP运行环境中几种软体的安装方法,因为单独安装和配置各种软体,对初学者来说比较难,也没有必要去学习。
(2)本书在体系结构上仿照一些经典的ASP教材进行编写,如果读者具有ASP编程基础,就能够很快通过体会PHP和ASP的异同,来领会PHP编程的思路。如果读者不具有任何Web编程经验,本书也能循序渐进的让读者掌握PHP Web开发的基本原理。
(3)对PHP访问资料库进行了重点讲解。分别介绍了mysql函式、mysqli函式和PDO方法访问资料库,并在介绍完每种方法的原理后,都安排了一节的实例内容。
(4)对PHP的传统内容去粗取精,Web应用程式的功能主要就是查询、添加、删除和修改记录,因此本书对这些功能的实现进行了重点叙述,在普通的PHP程式、生成静态网页的PHP程式和Ajax程式中分别实现了查询、添加、删除和修改等基本功能模组。
(5)在传统PHP教材的基础上,增加了新的流行内容,如分别在资料库端和Web伺服器端实现分页程式、用PHP生成静态HTML档案的新闻系统,PHP生成XML或RSS档案,尤其是对基于jQuery的Ajax技术进行了全面的介绍。
(6)Ajax技术已经成为企业开发中套用最广泛的技术之一,不管採用什幺样的开发平台,只要开发B/S架构的套用,那幺表现层就一定会使用Ajax技术。但对于初学者来说,常常会对原始Ajax程式中冗长的代码和晦涩的名称感到畏惧,失去了学习的信心。
目 录
第1章 Web应用程式开发概述... 12
1.1 网路应用程式结构的演变... 12
1.1.1 B/S结构和C/S结构... 12
1.1.2 Web应用程式... 13
1.1.3 Web的有关概念*. 14
1.2 网页的类型和工作原理... 17
1.2.1 静态网页和动态网页... 17
1.2.2 为什幺需要动态网页... 18
1.2.3 PHP动态网页的工作原理... 19
1.3 安装PHP的运行环境... 20
1.3.1 AppServ的安装... 20
1.3.2 运行第一个PHP程式... 24
1.3.3 Apache的配置... 26
1.3.4在IIS中集成PHP运行环境*. 28
1.3.5 配置DW开发PHP程式... 31
1.4 Web程式语言和运行环境... 33
1.4.1 Web程式语言... 33
1.4.2 Web伺服器软体... 35
1.5 Web编程的新趋势... 36
习题... 37
第2章HTML与CSS. 37
2.1 什幺是HTML. 37
2.1.1 HTML文档的结构... 38
2.1.2认识Dreamweaver 38
2.1.3使用DW新建HTML档案... 39
2.2 HTML标记... 40
2.2.1 HTML标记的分类和结构... 40
2.2.2 HTML元素的概念和分类... 40
2.2.3 文本格式标记... 42
2.2.4 列表标记... 43
2.2.5 图像标记<img>. 44
2.2.6 超连结标记<a>. 45
2.3 表格标记(<table>、<tr>、<td>)... 46
2.3.1 <table>标记及其属性... 47
2.3.2 <tr>、<td>、<th>标记的属性... 48
2.3.3 单元格的合併属性(colspan、rowspan)... 50
2.4 表单标记(<form>、<input>、<select>) 50
2.4.1 表单标记<form>. 51
2.4.2 <input>标记... 53
2.4.3 <select>和<option>标记... 55
2.4.4 多行文本域标记<textarea>. 55
2.4.5 表单数据的传递过程... 56
2.5 HTML与XHTML. 57
2.5.1 文档类型的含义和选择... 57
2.5.2 XHTML与HTML的重要区别... 58
2.6 CSS基础... 59
2.6.1 CSS的语法... 59
2.6.2 在HTML中引入CSS的方法... 60
2.6.3 选择器的分类... 61
2.6.4 伪类选择器及其套用... 62
2.7 CSS的盒子模型... 63
习题... 66
第3章 PHP基础... 67
3.1 PHP语言基础... 67
3.1.1 PHP代码的基本语法... 67
3.1.2 PHP的常量和变数... 70
3.1.3变数的作用域和生存期... 71
3.1.4可变变数和引用赋值... 72
3.1.5 运算符和表达式... 73
3.1.6 PHP的字元串... 75
3.1.7 PHP的数据类型和类型转换... 77
3.2 PHP的语句... 79
3.2.1 条件控制语句... 79
3.2.2 循环控制语句... 80
3.2.3 档案包含语句... 83
3.3 数组... 84
3.3.1 数组的创建... 84
3.3.2 访问数组元素或数组... 85
3.3.3 多维数组... 86
3.3.4 运算元组的内置函式... 86
3.4 PHP的内置函式... 91
3.4.1 字元串相关函式... 91
3.4.2 日期和时间函式... 93
3.4.3 检验函式... 94
3.4.4 数学函式... 96
3.5 自定义函式及使用... 97
3.5.1 函式的定义和调用... 97
3.5.2 变数函式和匿名函式... 100
3.5.3 传值赋值和传地址赋值... 100
3.6 面向对象编程... 101
3.6.1 类和对象... 102
3.6.2 类的继承和多态... 104
习题... 106
第4章 Web互动编程... 112
4.1 接收表单数据... 112
4.1.1使用$_POST[]获取表单数据... 112
4.1.2使用$_GET[]获取表单数据... 116
4.1.3使用$_GET[]获取URL字元串信息... 117
4.1.4传送HTTP请求的基本方法... 119
4.1.5 使用$_SERVER[]获取环境变数信息... 120
4.2 传送数据给浏览器... 121
4.2.1 使用echo方法输出信息... 121
4.2.2 使用header()函式重定向网页... 122
4.2.2 操作缓冲区... 123
4.3 使用$_SESSION设定和获取Session. 125
4.3.1 存储和读取Session信息... 125
4.3.2 Session的创建过程和有效期... 126
4.3.3 利用Session限制未登录用户的访问... 128
4.3.4 删除和销毁Session. 129
4.4 使用$_COOKIE读取Cookie. 130
4.4.1 创建和修改Cookie. 130
4.4.2 读取Cookie. 131
4.4.3 Cookie数组... 132
4.4.4 删除Cookie. 132
4.4.5 Cookie程式设计举例... 132
4.4.6 Cookie和Session的比较... 135
4.5 使用$_FILES获取上传档案信息... 136
4.5.1 添加上传档案的表单... 136
4.5.2使用$_FILES获取上传档案信息... 137
4.5.3保存上传档案到指定目录... 137
4.5.4同时上传多个档案... 139
习题... 140
第5章 PHP访问资料库... 143
5.1 资料库的基本知识... 143
5.1.1 资料库的基本术语... 143
5.1.2使用phpMyAdmin管理MySQL资料库... 144
5.1.3 SQL语言简介... 147
5.1.4 Select语句... 148
5.1.5 添加、删除、更新记录的语句... 150
5.1.6 SQL字元串中含有变数的书写方法... 151
5.2 访问MySQL资料库... 152
5.2.1 连线MySQL资料库... 153
5.2.2 创建结果集并输出记录... 154
5.2.3 使用mysql_query方法操纵资料库... 157
5.3 添加、删除、修改记录的综合实例... 158
5.3.1管理记录主页面的设计... 159
5.3.2 添加记录的实现... 160
5.3.3 删除记录的实现... 162
5.3.4 同时删除多条记录的实现... 162
5.3.5 修改记录的实现... 164
5.3.6 查询记录的实现... 166
5.4 分页显示数据... 167
5.4.1 分页程式的基本实现... 168
5.4.2 对查询结果进行分页... 171
5.4.3 将分页程式写成函式... 173
5.4.4 可设定每页显示记录数的分页程式... 175
5.5 mysqli扩展函式的使用... 176
5.5.1 连线mysql资料库... 177
5.5.2 执行SQL语句创建结果集... 178
5.5.3 从结果集中获取数据... 178
5.5.4 同时执行多条SQL语句... 179
5.6 新闻网站综合实例... 181
5.6.1 为网站引用后台程式和资料库... 181
5.6.2 在首页显示数据表中的新闻... 183
5.6.3 製作动态图片轮显效果... 186
5.6.4 製作显示新闻详细页面... 188
5.6.5 製作栏目首页... 190
5.6.6 FCKeditor的使用... 191
5.7 资料库接口层PDO.. 194
5.7.1 PDO的安装... 195
5.7.2 创建PDO对象连线资料库... 195
5.7.3 使用query()方法执行查询... 196
5.7.4 使用exec()方法执行增、删、改命令... 197
5.7.5 使用prepare()方法执行预处理语句... 197
5.8 用PDO製作留言板实例... 199
习题... 201
第6章 PHP档案访问技术... 203
6.1 档案访问函式... 203
6.1.1打开和关闭档案... 203
6.1.2 读取档案... 204
6.1.3 移动档案指针... 206
6.1.4文本档案的写入和追加... 207
6.1.5 读写档案的套用——製作计数器... 208
6.2 档案及目录的基本操作... 210
6.2.1 複製、移动和删除档案... 210
6.2.2 获取档案属性... 210
6.2.3目录的基本操作... 212
6.2.4 统计目录和磁碟大小... 215
6.3製作生成静态页面的新闻系统... 215
6.3.1 资料库设计和製作模板页... 216
6.3.2 新闻添加页面和程式的製作... 217
6.3.3 新闻后台管理页面的製作... 219
6.3.4 新闻修改页面的製作... 220
6.3.5 新闻删除页面的製作... 222
6.3.6网站首页和栏目首页的静态化... 223
6.4 利用FSO生成RSS档案... 226
6.4.1 XML语法概述... 226
6.4.2 RSS概述... 227
6.4.3 用PHP输出RSS文档... 229
习题... 230
第7章 JavaScript 231
7.1 JavaScript简介... 231
7.1.1 JavaScript的特点... 231
7.1.2 JavaScript的用途... 231
7.1.3 网页中插入JavaScript脚本的方法... 232
7.1.4 开发和调试JavaScript的工具... 234
7.2 JavaScript语言基础... 234
7.2.1 JavaScript的变数... 235
7.2.2 JavaScript的运算符... 235
7.2.3 JavaScript数据类型... 238
7.2.4 数组(array)... 240
7.2.5 JavaScript语句... 242
7.2.6 函式... 245
7.3 对象... 246
7.3.1 JavaScript对象... 246
7.3.2 with语句... 248
7.3.3 this关键字... 248
7.3.4 JavaScript的内置对象... 249
7.4 浏览器对象模型BOM.. 250
7.4.1 window对象... 250
7.4.2 使用定时操作函式製作动画效果... 252
7.4.3 location对象... 255
7.4.4 history对象... 256
7.4.5 document对象... 256
7.4.6 screen对象... 259
7.5 文档对象模型DOM.. 259
7.5.1 网页中的DOM模型... 259
7.5.2 访问指定节点... 260
7.5.3 访问和设定元素的HTML属性... 263
7.5.4 访问和设定元素的内容... 264
7.5.5 访问和设定元素的CSS属性... 265
7.5.6 创建和替换元素节点... 268
7.5.7 用DOM控制表单... 269
7.6 事件处理... 271
7.6.1 事件流... 271
7.6.2 处理事件的两种方法... 272
7.6.3 浏览器中的常用事件... 274
7.6.4 事件对象... 277
7.6.5 DOM和事件编程实例... 279
习 题... 284
第8章 jQuery框架... 287
8.1 jQuery框架使用入门... 287
8.1.1 jQuery框架的功能... 287
8.1.2下载并使用jQuery. 288
8.1.3 jQuery中的“$”及其作用... 288
8.1.4 jQuery对象与DOM对象... 291
8.2 jQuery的选择器... 293
8.2.1 支持的CSS选择器... 293
8.2.2 过滤选择器... 294
8.3 遍历和筛选DOM元素... 297
8.3.1 遍历DOM元素的方法... 297
8.3.2?用slice()方法实现表格分页... 298
8.4 jQuery对DOM文档的操作... 301
8.4.1 创建元素... 301
8.4.2 插入到指定元素的内部... 301
8.4.3 插入到指定元素的外部... 303
8.4.4 删除元素... 303
8.4.5 包裹元素... 304
8.2.6 替换和複製元素... 305
8.5 DOM属性操作... 306
8.5.1 获取和设定元素属性... 306
8.5.2 获取和设定元素的内容... 307
8.5.3获取和设定元素的CSS属性... 307
8.6 事件处理... 308
8.6.1 页面载入时执行任务... 308
8.6.2 jQuery中的常见事件... 309
8.6.3 附加事件处理程式... 311
8.7 jQuery动画效果... 314
8.7.1 显示与隐藏元素的三对方法... 314
8.7.2 製作渐变背景色的下拉选单... 316
8.8 jQuery的套用举例... 318
8.8.1 製作摺叠式选单(Accordion)... 318
8.8.2 製作Tab面板... 321
8.8.3製作图片轮显效果... 322
习 题... 324
第9章 基于jQuery的Ajax技术... 325
9.1 Ajax技术的基本原理... 325
9.1.1 浏览器传送HTTP请求的三种方式... 325
9.1.2 基于Ajax技术的Web应用程式模型... 326
9.1.3 载入页面的传统方法... 328
9.1.4 用原始的Ajax技术载入文档... 328
9.1.5 解决IE浏览器的快取问题... 332
9.1.6 载入PHP文档... 332
9.1.7 XMLHttpRequest对象传送数据给伺服器... 333
9.2 jQuery中的Ajax方法与载入文档... 335
9.2.1 使用load方法载入HTML文档... 335
9.2.2 JSON数据格式... 337
9.2.3 使用$.getJSON方法载入JSON文档... 339
9.2.4 使用$.getScript方法载入JS文档... 341
9.2.5 使用$.get方法载入XML文档... 342
9.2.6 各种数据格式的优缺点分析... 346
9.3 传送数据给伺服器... 347
9.3.1 使用$.get()方法执行GET请求... 347
9.3.2 使用$.post()方法执行POST请求... 351
9.3.3 使用load方法传送请求数据... 352
9.3.4 使用$.ajax()方法设定Ajax的细节... 353
9.3.5 全局设定Ajax. 354
9.4 表单的序列化方法... 355
9.5 使用JSONP传送跨域Ajax请求... 357
习题... 359
第10章Ajax方式访问资料库... 359
10.1 Ajax方式显示数据... 360
10.1.1 以原有格式显示数据... 360
10.1.2 以自定义的格式显示数据... 361
10.2 Ajax方式查询数据... 364
10.2.1 无刷新查询数据的实现... 364
10.2.2 查询数据的套用举例... 365
10.3 Ajax方式添加记录... 384
10.3.1 基本的添加记录程式... 384
10.3.2 在伺服器端和客户端分别添加记录... 386
10.3.3 製作无刷新评论系统... 386
10.3.4 製作无刷新购物车程式... 389
10.4 Ajax方式修改记录... 392
10.4.1 基本的Ajax方式修改记录程式... 392
10.4.2 製作无刷新投票系统... 396
10.5 Ajax方式删除记录... 399
10.5.1 基本的删除记录程式... 399
10.5.2 同时删除多条记录的程式... 400
10.6 Ajax方式进行记录集分页... 401
10.6.1 基本的Ajax分页程式... 401
10.6.2 可设定每页显示记录数的分页程式... 403
10.6.3 添加、删除记录程式的分页显示... 405
10.7 Ajax程式的转换与调试技巧... 407
10.7.1 将原始Ajax程式转换成jQuery Ajax程式... 407
10.7.2 调试Ajax程式的方法... 408
习题... 409
附录A:MySQL资料库的迁移和转换... 410
A.1 使用phpMyAdmin导出导入数据... 410
A.2使用Navicat for MySQL管理资料库... 410
A.3 部署一个网站程式... 412
附录B:实 验... 413
B.1 实验1:搭建PHP运行和开发环境... 413
B.2 实验2:PHP语言基础... 413
B.3 实验3:函式的定义和调用... 414
B.4 实验4:面向对象程式设计... 414
B.5 实验5:获取表单及URL参数中的数据... 415
B.6 实验6:Session和Cookie的使用... 415
B.7 实验7:MySQL资料库的管理... 416
B.8 实验8:在PHP中访问MySQL资料库... 416
B.9 实验9:分页程式的设计... 417
B.10 实验10:使用mysqli函式访问资料库... 417
B.11 实验11:编写简单的Ajax程式... 417
附录C:PHP与ASP的区别... 418