
本书介绍Ajax和PHP两种比较流行的技术,覆盖了Ajax和PHP技术的基本知识和应用场景。本书分为5篇,分别为:PHP基础篇、PHP Web应用篇、Ajax基础开发篇、组合篇和实例篇。内容囊括了PHP开发的基础知识、Ajax开发的基础知识、PHP+Ajax组合开发Web 2.0程序和PHP+Ajax实例程序。本书最后介绍了一个教学视频网站后台管理系统,帮助读者全面掌握在实际项目中使用Ajax技术,提高对大型应用系统的整体把握,使读者熟练掌握PHP+Ajax技术。
本书适合网站开发人员、PHP和Ajax开发人员以及Web开发爱好者学习和参考,也可以作为PHP和Ajax的教学参考书。
PHP是一种易于学习和使用的后台开发技术。用户只需要具备很少的编程知识,就可以使用PHP建立一个具有交互功能的Web站点。应用PHP有许多好处,如实用性强、功能强大、成本较低等。对于个人来说学习和使用PHP是一个很好的选择。
Ajax技术为用户提供了更丰富的页面浏览体验,可以构建高度交互的Web应用。本书介绍了在Web 2.0的标准下结合Ajax技术进行各种PHP Web应用开发的方式和技巧。主要内容包括CSS和XML的基础、DOM的应用、XMLHttpRequest对象、JavaScript开发工具、Ajax客户端编程、与服务器通信以及将Ajax技术集成到PHP网站,还介绍了与Ajax相关的框架等技术。
1.本书内容
本书介绍了Ajax和PHP两种比较流行的技术,覆盖了Ajax和PHP技术基本知识和应用场景。本书分为5篇,分别为:PHP基础篇、PHP Web应用篇、Ajax基础篇、PHP+Ajax组合篇和综合实例篇,各篇主要内容如下。
第1篇:PHP基础篇(第1~4章)。本篇首先向读者介绍PHP的发展历程,以及配置PHP环境,然后详细介绍PHP语法基础和面向对象特性,像常量、变量、数据类型、运算符、对象、类、属性、方法、继承、接口以及反射等。
第2篇:PHP Web应用篇(第5~8章)。在本篇中首先介绍如何使用PHP提交与获取表单数据、登录信息;然后通过实例的方式详细阐述cookie和会话机制;最后介绍了文件I/O和数据库操作,以及在客户端如何处理XML文件等。
第3篇:Ajax基础篇(第9~14章)。向读者介绍Ajax的概念、优势、运行机制以及第一个Ajax实例。然后,针对Ajax的核心组成部分进行详细介绍,包括CSS、JavaScript、XML、XMLHttpRequest及DOM。
第4篇:PHP+Ajax组合篇(第15~17章)。主要介绍Ajax技术与PHP结合的简单实际应用。首先介绍如何处理服务器响应,然后讲解Ajax技术的设计模式,接下来,以实例的形式详细介绍Ajax技术的使用技巧,例如在PHP页面上显示进度条、级联菜单形式显示数据库数据,以及PHP+Ajax数据分页显示等。
第5篇:综合实例篇(第18章)。本实例实现一个教学视频网站后台管理系统,让读者全面掌握如何在实际项目中使用Ajax技术,并提高读者对大型应用系统的整体把握,同时提高读者对PHP+Ajax技术的熟练程度。
基本上囊括了PHP开发的基础知识、Ajax开发的基础知识、PHP+Ajax组合开发Web 2.0程序和PHP+Ajax实例程序。
2.本书特色
书中采用大量的实例进行讲解,力求通过实例使读者更形象地理解PHP的编程思想,快速掌握基于Ajax技术的开发。本书难度适中,内容由浅入深,实用性强,覆盖面广,条理 清晰。
? 知识点全 本书紧紧围绕利用PHP与Ajax进行Web程序开发展开讲解,具有很强的逻辑性和系统性。
? 实例丰富 书中各实例均经过作者精心设计和挑选,都是根据作者在实际开发中的经验总结而来,几乎涵盖了在实际开发中所遇到的各种问题。
? 应用广泛 对于精选案例,给了详细步骤,结构清晰简明,分析深入浅出,而且有些程序能够直接在项目中使用,避免读者进行二次开发。
? 基于理论,注重实践 在讲述过程中,不仅介绍理论知识,而且在合适位置安排综合应用实例,或者小型应用程序,将理论应用到实践当中,来加强读者的实际应用能力,巩固PHP开发基础知识。
? 随书光盘 本书为实例配备了视频教学文件,读者可以通过视频文件更加直观地学习PHP和Ajax的使用知识。
? 网站技术支持 读者在学习或者工作的过程中,如果遇到实际问题,可以直接登录www.itzcn.com,作者会在第一时间给予帮助。
3.读者对象
本书具有知识全面、实例精彩、指导性强的特点,力求以全面的知识性及丰富的实例来指导读者透彻地学习PHP和Ajax各方面的知识。本书可以作为PHP Web开发人员的重要学习资料,也可以作为PHP和Ajax开发职业培训教程。
本书适合以下人员阅读学习。
? PHP初学者和自学者。
? 网站后台维护人员。
? PHP应用开发人员。
? Ajax前台应用开发人员。
? 各大中专院校的在校学生和相关授课老师。
? 其他Web编程爱好者。
除了封面署名人员之外,参与本书编写的还有左旭日、于永军、张秋香、李乃文、张仕禹、夏小军、赵振江、李振山、李文才、吴越胜、李海庆、何永国、李海峰、陶丽、吴俊海、安征、张巍屹、崔群法、王咏梅、康显丽、辛爱军、牛小平、贾栓稳、王立新、苏静、赵元庆、郭磊、徐铭、李大庆、王蕾、张勇、郝安林、郭新志、牛丽平、唐守国等。在编写过程中难免会有疏漏,欢迎读者与编者联系,帮助编者改正提高。
II
III
第1篇 PHP基础篇
第1章 PHP入门 2
1.1 PHP概述 2
1.1.1 PHP产生和发展 2
1.1.2 PHP介绍 3
1.2 搭建PHP环境 5
1.2.1 安装Apache和PHP 5
1.2.2 测试PHP环境 11
1.2.3 使用PHP帮助文档 12
1.3 PHP配置指令介绍 14
1.3.1 管理PHP的配置指令 14
1.3.2 PHP的配置指令 16
1.4 PHP简单例子 20
第2章 PHP基础语法 22
2.1 PHP脚本基础 22
2.1.1 嵌入PHP代码 22
2.1.2 注释 25
2.1.3 输出函数介绍 25
2.2 数据类型 28
2.2.1 标量数据类型 28
2.2.2 复合数据类型 30
2.2.3 特殊数据类型 32
2.2.4 类型转换 32
2.2.5 类型函数 34
2.3 变量 36
2.3.1 创建变量 36
2.3.2 变量作用域 38
2.3.3 变量的变量 41
2.4 常量 41
2.5 表达式 42
2.5.1 操作数 42
2.5.2 操作符 42
2.6 控制结构 47
2.6.1 条件语句 48
2.6.2 循环语句 51
2.6.3 break和continue语句 53
2.7 函数 55
2.7.1 调用PHP函数 55
2.7.2 用户自定义函数 56
2.7.3 函数库 57
2.8 数组 58
2.8.1 数组概述 58
2.8.2 管理数组 59
第3章 面向对象的PHP 65
3.1 OOP特性 65
3.1.1 封装 65
3.1.2 继承 66
3.1.3 多态 66
3.2 关键的OOP概念 67
3.2.1 类和对象 67
3.2.2 字段 68
3.2.3 属性 72
3.2.4 常量 74
3.2.5 方法 75
3.3 构造函数和析构函数 80
3.3.1 构造函数 80
3.3.2 析构函数 82
3.4 新增OOP特性 83
3.4.1 类型提示 83
3.4.2 静态类成员 84
3.4.3 instanceof关键字 85
3.4.4 自动加载对象 86
3.5 类/对象函数 86
3.5.1 class_exits()函数 86
3.5.2 get_class()函数 87
3.5.3 get_class_methods()函数 88
3.5.4 get_class_vars()函数 89
3.5.5 get_declared_classes()函数 89
3.5.6 get_object_vars()函数 90
3.5.7 method_exists()函数 91
3.5.8 interface_exists()函数 91
第4章 高级OOP特性 92
4.1 PHP不支持的高级OOP特性 92
4.2 对象克隆 93
4.2.1 克隆 93
4.2.2 __clone()方法 94
4.3 继承 96
4.3.1 类继承 96
4.3.2 继承和构造函数 98
4.4 接口 100
4.4.1 实现一个接口 100
4.4.2 实现多个接口 101
4.5 抽象类 103
4.6 反射 104
4.6.1 编写ReflectionClass类 104
4.6.2 编写ReflectionMethod类 105
4.6.3 编写ReflectionParameter类 106
4.6.4 编写ReflectionProperty类 108
4.6.5 编写ReflectionExtension类 109
第2篇 PHP Web应用篇
第5章 PHP简单Web操作 112
5.1 PHP和Web表单 112
5.1.1 HTML表单GET和POST 112
5.1.2 向函数传递表单数据 115
5.1.3 处理多值表单组件 116
5.2 PHP与字符串 118
5.2.1 获取字符串长度 119
5.2.2 字符串比较函数 119
5.2.3 字符串大小写转换 122
5.2.4 填充和剔除字符串 124
5.2.5 字符和单词计数 126
5.2.6 字符串与HTML相互转换 129
5.2.7 解析字符串表达式的函数 132
5.3 PHP身份认证 139
5.3.1 基本的HTTP身份验证 140
5.3.2 PHP身份认证 140
第6章 cookie和会话 145
6.1 cookie 145
6.1.1 cookie介绍 145
6.1.2 基本操作 146
6.1.3 cookie有效性控制 150
6.2 会话 152
6.2.1 PHP会话配置 152
6.2.2 会话工作原理 156
6.2.3 基本用法 157
6.2.4 获取会话ID 159
6.2.5 会话ID传输 160
6.2.6 会话数据 160
6.2.7 编码和解码会话数据 162
6.3 会话实例 163
6.3.1 删除会话中已创建变量 163
6.3.2 Session的使用 166
第7章 PHP操作文件和数据库 169
7.1 文件和属性 169
7.1.1 解析路径 169
7.1.2 访问文件属性 172
7.1.3 访问属性信息 180
7.2 操作文件 182
7.2.1 打开和关闭文件 182
7.2.2 读取文件 183
7.2.3 移动文件指针 189
7.2.4 写入文件 190
7.2.5 读取内容 191
7.3 连接MySQL数据库 193
7.3.1 建立连接 194
7.3.2 单独存放连接文件 196
7.3.3 选择数据库 197
7.4 数据库基本操作 197
7.4.1 执行SQL语句 198
7.4.2 获取和显示数据 199
7.4.3 管理数据库数据 204
7.5 数据库高级操作 208
7.5.1 获取错误信息 209
7.5.2 获取数据库和表信息 210
7.5.3 获取字段信息 212
7.5.4 辅助函数 216
7.5.5 多个查询 218
7.5.6 准备语句 219
7.5.7 事务处理 222
第8章 在PHP中处理XML 225
8.1 PHP生成XML 225
8.2 PHP处理XML 227
8.2.1 解析XML文档方法比较 227
8.2.2 SAX解析器解析XML 228
8.2.3 使用DOM库对XML文档解析 234
8.2.4 使用SimpleXML处理XML 240
8.3 客户端处理XML 248
第3篇 Ajax基础篇
第9章 Ajax概述 252
9.1 Web 2.0与Ajax简介 252
9.1.1 Web 2.0简介 252
9.1.2 什么是Ajax 253
9.1.3 Ajax运行机制 253
9.1.4 Ajax核心内容 254
9.2 Ajax结构及其意义 255
9.2.1 传统Web应用解决方案 255
9.2.2 Ajax解决方案的优势 256
9.2.3 Ajax的应用 257
9.2.4 Ajax相关技术简介 257
9.3 第一个Ajax实例 258
第10章 CSS 263
10.1 CSS概述 263
10.1.1 CSS简介 263
10.1.2 定义CSS规则 264
10.1.3 应用CSS 267
10.2 基本属性 271
10.2.1 字体 272
10.2.2 文本 273
10.2.3 背景 274
10.2.4 列表 276
10.3 区块属性 277
10.3.1 区块模型 277
10.3.2 边框 279
10.3.3 间距 281
10.3.4 填充 283
10.4 位置属性 284
10.4.1 定位 284
10.4.2 布局 288
10.4.3 浮动模型 293
10.5 其他属性 295
10.5.1 单位 295
10.5.2 鼠标指针 296
10.5.3 滤镜 297
第11章 JavaScript 298
11.1 JavaScript语言概述 298
11.2 基础语法 299
11.2.1 变量 299
11.2.2 运算符 301
11.2.3 数据类型 303
11.3 流程控制语句 304
11.3.1 条件语句 305
11.3.2 循环语句 307
11.3.3 其他语句 310
11.3.4 异常处理 310
11.4 函数 311
11.4.1 定义和调用函数 312
11.4.2 基于对象的函数 313
11.4.3 系统函数 314
11.5 事件机制 317
11.5.1 事件概述 317
11.5.2 事件处理程序 318
11.5.3 事件驱动 319
11.5.4 事件处理的使用方法 320
11.5.5 使用this关键字 324
11.6 对象 324
11.6.1 对象概述 325
11.6.2 内置对象 327
11.6.3 浏览器对象 334
11.6.4 自定义对象 335
第12章 XML编程基础 337
12.1 XML基本概念 337
12.1.1 XML简介 337
12.1.2 XML标记、元素和属性 338
12.1.3 XML命名空间 341
12.1.4 XML实体引用及CDATA段 342
12.2 文档类型定义DTD 343
12.2.1 DTD简介 344
12.2.2 内部DTD和外部DTD 344
12.2.3 声明DTD 346
12.2.4 DTD实体 349
12.3 XML架构Schema 354
12.3.1 XML Schema模型结构 354
12.3.2 XML Schema数据类型 355
12.3.3 XML Schema元素声明 359
12.3.4 XML Schema属性声明 362
12.4 XSLT 363
12.4.1 XSLT简介 364
12.4.2 XSLT文档 364
12.4.3 XSLT模板语法 366
12.4.4 XSLT元素 369
第13章 XMLHttpRequest 373
13.1 XMLHttpRequest简介 373
13.2 XMLHttpRequest成员 374
13.2.1 XMLHttpRequest属性 374
13.2.2 XMLHttpRequest方法 376
13.3 XMLHttpRequest与服务器通信 378
13.3.1 创建XMLHttpRequest对象 378
13.3.2 发送请求 379
13.3.3 处理回调函数 380
13.4 XMLHttpRequest对象运行周期 381
13.5 XMLHttpRequest实例 383
13.5.1 局部刷新 384
13.5.2 操作XML 386
13.5.3 级联菜单 388
第14章 DOM 392
14.1 DOM模型概述 392
14.2 DOM结构模型 393
14.2.1 DOM与HTML 394
14.2.2 DOM与XML 395
14.3 DOM对象 397
14.3.1 DOM核心接口 397
14.3.2 DOM基本对象 399
14.3.3 创建DOM对象 401
14.4 使用DOM操作HTML文档 402
14.4.1 遍历文档的节点 402
14.4.2 搜索特定元素 403
14.4.3 修改内容 404
14.4.4 添加和删除内容 405
14.5 使用DOM操作XML文档 407
14.5.1 创建XML文档 407
14.5.2 遍历XML文档 409
14.5.3 复制和修改节点 410
14.5.4 删除节点 411
第4篇 PHP+Ajax组合篇
第15章 Ajax客户端应用 414
15.1 在HTTP请求中包含参数 414
15.1.1 发送包含参数的普通请求 415
15.1.2 请求参数作为XML发送 420
15.1.3 发送JSON格式请求 423
15.2 处理服务器响应 425
15.2.1 处理文本格式的响应 426
15.2.2 处理XML格式的响应 428
15.2.3 处理JSON格式的响应 430
15.3 Ajax实例 432
第16章 Ajax设计模式 435
16.1 设计模式 435
16.1.1 设计模式概述 435
16.1.2 设计模式组成要素和原则 436
16.1.3 基本设计模式 438
16.2 常用设计模式 440
16.2.1 Facade模式 440
16.2.2 Adapter模式 442
16.2.3 Observer模式 444
16.2.4 Command模式 445
16.2.5 MVC模式 446
16.3 应用MVC模式 448
16.3.1 应用Ajax视图 449
16.3.2 应用Ajax控制器 452
16.3.3 应用Ajax模型 452
第17章 PHP常用技巧 455
17.1 创建工具提示 455
17.2 读取响应首部 458
17.3 显示进度条 461
17.4 提供自动提示功能 467
17.5 完成数据库各项操作 472
17.6 级联菜单形式显示信息 487
17.7 Ajax+PHP数据分页显示 490
17.8 Ajax自动保存草稿 494
17.9 信息排序 499
第5篇 综合实例篇
第18章 教学视频网站后台管理系统 504
18.1 系统概述 504
18.2 数据库设计 506
18.3 课程管理 508
18.4 上传视频 516
18.5 班级管理模块 523
18.5.1 创建班级 523
18.5.2 管理班级 525
18.5.3 添加视频和视频列表 529
VI
VII