《PHP编程宝典(十年典藏版)(1DVD)》是由刘中华 潘凯华编着,人民邮电出版社出版的一本书籍。
基本介绍
- 书名PHP编程宝典
- 作者刘中华 潘凯华
- ISBN978-7-115-23294-6
- 定价89元RMB
- 出版社人民邮电出版社
- 出版时间2010-11-01
内容简介
本书是一本集技能、範例、项目和套用为一体的学习手册,书中介绍了套用PHP进行Web程式开发的各种技术和技巧。全书分4篇,共24章内容。第1篇为技能学习篇,主要包括初识PHP、PHP环境搭建、PHP语言基础、流程控制语句、函式、字元串、数组、日期和时间、PHP与Web页面互动、会话管理、档案系统、面向对象、PHP与MySQL资料库、ADODB类库、Smarty模板、Zend Framework框架等内容;第2篇为範例演练篇,主要包括基础知识、关键技术、新技术相关的範例;第3篇为项目实战篇,主要内容包括新闻发布系统、明日企业网、明日知道、明日编程词典4个小型项目;第4篇为商业系统篇,主要包括一个大型的商业项目,即明日科技书店。
本书附有配套DVD光碟,光碟中提供有书中全部实例和项目的原始码,这些原始码全部经过精心调试,能够在Windows XP、Windows Server 2003及Windows 7作业系统下编译和运行。
本书适用于PHP初学者、编程爱好者,也可以作为培训机构、大中专院校老师和学生的学习参考用书。
图书目录
第1篇 技能学习篇
第1章 初识PHP
1.1 本章学习任务 4
1.2 确立学习信心 4
1.2.1 程式设计师的成长之路 4
1.2.2 如何学好编程 5
1.2.3 获取开发环境 6
1.2.4 代码编辑工具 7
1.3 分析PHP语言 8
1.3.1 PHP概述 8
1.3.2 PHP语言相关术语 9
1.3.3 PHP语言发展前景 11
1.4 探讨学习经验 12
1.4.1 PHP参考手册 12
1.4.2 PHP网路资源 13
1.4.3 成功案例 13
1.5 精彩回顾 15
第2章 PHP环境搭建
2.1 本章学习任务 18
2.2 AppServ——PHP开发环境集成化 18
2.2.1 套用AppServ集成化安装包搭建PHP开发环境 18
2.2.2 测试AppServ是否安装成功 21
2.3 IIS+PHP+MySQL——独立搭建PHP开发环境 22
2.3.1 安装PHP 5.3.1 23
2.3.2 安装MySQL 24
2.3.3 安装IIS伺服器 30
2.3.4 配置IIS伺服器 31
2.3.5 测试独立环境是否搭建成功 32
2.4 Linux下搭建PHP开发环境 33
2.4.1 安装Apache伺服器 33
2.4.2 安装MySQL资料库 35
2.4.3 安装PHP 5语言 36
2.4.4 配置PHP 38
2.4.5 测试PHP开启环境是否搭建成功 38
2.5 Dreamweaver开发工具 39
2.5.1 通过Dreamweaver创建站点 39
2.5.2 套用Dreamweaver开发第一个PHP程式 40
2.6 ZendStudio开发工具 42
2.6.1 Zend Studio for Eclipse的安装 42
2.6.2 套用Zend Studio开发第二个PHP程式 44
2.7 phpMyAdmin 48
2.7.1 Windows下phpMyAdmin的安装配置 48
2.7.2 Linux下phpMyAdmin的安装配置 48
2.8 实战检验 49
2.9 疑难解惑 50
2.9.1 伺服器配置错误 50
2.9.2 PHP的配置错误 51
2.10 精彩回顾 51
第3章 PHP语言基础
3.1 本章学习任务 54
3.2 PHP工作原理 55
3.3 PHP语法基础 56
3.3.1 PHP标记符 56
3.3.2 PHP的注释 57
3.4 PHP数据类型 58
3.4.1 整型 58
3.4.2 布尔型 59
3.4.3 浮点型 59
3.4.4 字元串型 60
3.4.5 複合数据类型 62
3.4.6 特殊数据类型 63
3.4.7 数据类型的获取与检测 63
3.4.8 数据类型转换 64
3.5 PHP常量 66
3.5.1 声明常量 66
3.5.2 获取常量 66
3.5.3 判断常量 67
3.5.4 常量套用 67
3.5.5 预定义常量 67
3.6 PHP变数 68
3.6.1 声明变数 68
3.6.2 变数赋值 69
3.6.3 变数作用域 70
3.6.4 可变变数 70
3.6.5 预定义变数 71
3.7 PHP运算符 72
3.7.1 字元串运算符 72
3.7.2 算术运算符 72
3.7.3 赋值运算符 73
3.7.4 自增、自减运算符 73
3.7.5 位运算符 74
3.7.6 逻辑运算符 74
3.7.7 比较运算符 75
3.7.8 条件运算符 75
3.7.9 运算符的优先权 76
3.8 PHP的表达式 77
3.9 包含档案 77
3.9.1 include语句 77
3.9.2 require语句 79
3.9.3 include_once语句 79
3.9.4 require_once语句 80
3.10 实战检验 81
3.10.1 通过PHP预定义变数获取上传档案的大小 81
3.10.2 套用包含语句完成电子商务网站主页的设计 81
3.11 疑难解惑 82
3.11.1 技巧一(编写标準风格的PHP代码) 82
3.11.2 技巧二(充分发挥PHP注释的作用) 83
3.11.3 疑难分析(register-globals选项对PHP变数的影响) 84
3.11.4 注意事项(掌握常用的输出语句) 86
3.12 精彩回顾 88
第4章 流程控制语句
4.1 本章学习任务 90
4.2 程式的控制结构 90
4.2.1 顺序结构 90
4.2.2 选择(分支)结构 91
4.2.3 循环结构 91
4.3 条件控制语句 92
4.3.1 if条件语句 92
4.3.2 switch…case分支控制语句 94
4.4 循环控制语句 96
4.4.1 while循环语句 96
4.4.2 do…while循环语句 97
4.4.3 for循环语句 98
4.4.4 foreach循环 99
4.5 跳转控制语句 100
4.5.1 break语句跳出循环体 100
4.5.2 continue语句跳出本次循环 101
4.6 实战检验 102
4.6.1 套用if语句控制档案的访问许可权 103
4.6.2 套用switch语句设计网站主页 103
4.6.3 套用for循环读取资料库中的数据 104
4.7 疑难解惑 104
4.7.1 流程控制语句的替代语法 104
4.7.2 for循环语句的其他格式 105
4.7.3 用不同的语句实现相同的功能 105
4.7.4 避免错误地使用continue语句 106
4.8 精彩回顾 106
第5章 函式
5.1 本章学习任务 108
5.2 自定义函式 108
5.2.1 函式的命名规则 108
5.2.2 自定义函式格式 109
5.2.3 自定义函式的调用 109
5.2.4 自定义函式的参数 110
5.2.5 自定义函式的返回值 111
5.3 内置函式 112
5.3.1 IMAGE图像函式——典型的内置函式 112
5.3.2 imagecreate函式——创建画布 113
5.3.3 imagecolorallocate函式——颜色处理 113
5.3.4 imagegif函式——输出图像 114
5.3.5 imagestring函式——输出文字 115
5.3.6 套用Jpgraph类库创建3D饼形图 117
5.4 实战检验 118
5.4.1 套用PHP内置函式对字元串进行截取 118
5.4.2 套用自定义函式截取中文字元串 118
5.5 疑难解惑 120
5.5.1 什幺是变数函式 120
5.5.2 PHP内置函式馆载入 121
5.6 精彩回顾 121
第6章 字元串
6.1 本章学习任务 124
6.2 转义、还原字元串 125
6.3 截取字元串 126
6.4 分割、合成字元串 128
6.5 替换字元串 129
6.5.1 str_ireplace()函式 129
6.5.2 substr_replace()函式 130
6.6 检索字元串 131
6.6.1 strstr()函式 131
6.6.2 substr_count()函式 132
6.7 去除字元串中空白字元和特殊字元 133
6.7.1 ltrim()函式 133
6.7.2 rtrim()函式 134
6.7.3 trim()函式 134
6.8 字元串与HTML转换 135
6.9 实战检验 136
6.9.1 超长文本的分页输出 136
6.9.2 查询关键字描红 137
6.9.3 购物车中数据的读取 138
6.10 疑难解惑 139
6.11 精彩回顾 140
第7章 数组
7.1 本章学习任务 142
7.2 声明数组 143
7.2.1 用户创建数组 143
7.2.2 套用函式创建数组 144
7.2.3 创建二维数组 145
7.3 数组类型 146
7.4 遍历、输出数组 147
7.4.1 遍历数组 147
7.4.2 输出数组元素 149
7.5 数组函式 149
7.5.1 统计数组元素个数 149
7.5.2 向数组中添加元素 149
7.5.3 获取数组中一个元素 150
7.5.4 删除数组中重複元素 150
7.5.5 获取数组中指定元素的键名 151
7.6 实战检验 152
7.6.1 打乱数组中元素的顺序 152
7.6.2 生成线上考试题 153
7.7 疑难解惑 153
7.7.1 创建数组函式扩展 154
7.7.2 为什幺$array[str]错了 154
7.7.3 如何设定PHP的错误级别 155
7.8 精彩回顾 156
第8章 日期和时间
8.1 本章学习任务 158
8.2 时区设定 159
8.2.1 在php.ini档案中设定时区 159
8.2.2 通过date_default_timezone_set()函式设定时区 159
8.3 UNIX时间戳 160
8.3.1 获取日期的时间戳 160
8.3.2 获取当前时间戳 161
8.3.3 日期、时间转换为UNIX时间戳 161
8.4 日期和时间处理 162
8.4.1 格式化日期和时间 163
8.4.2 获取日期和时间信息 165
8.4.3 检验日期和时间的有效性 166
8.5 实战检验 166
8.5.1 获取系统当前时间和时间戳 166
8.5.2 比较两个时间的大小 167
8.5.3 倒计时 167
8.5.4 计算程式的运行时间 167
8.5.5 网页闹钟 168
8.6 疑难解惑 169
8.7 精彩回顾 170
第9章 PHP与Web页面互动
9.1 本章学习任务 172
9.2 Web表单——PHP外交部发言人 173
9.3 通过form标记创建表单 174
9.4 表单元素——form家族成员 175
9.4.1 输入域标记input 175
9.4.2 选择域标记select和option 176
9.4.3 文本域标记textarea 177
9.5 POST和GET——表单元素提交方式 178
9.5.1 套用GET方式提交表单 179
9.5.2 套用POST方式提交表单 179
9.6 在Web页中嵌入PHP脚本 180
9.6.1 在HTML中嵌入PHP脚本 181
9.6.2 在表单中嵌入PHP脚本 182
9.7 $_POST[]和$_GET[]——表单元素值的获取方法 182
9.7.1 $_POST[]全局变数 183
9.7.2 $_GET[]全局变数 183
9.8 通过URL传递数据 183
9.8.1 使用URL传递数据 183
9.8.2 获取URL传递的数据 184
9.8.3 URL传递数据的编码和解码 185
9.9 实战检验 186
9.10 疑难解惑 187
9.10.1 注意表单元素名称大小写的区别 188
9.10.2 表单元素操作技巧两则 188
9.10.3 养成为URL传递的数据进行编码的习惯 188
9.11 精彩回顾 189
第10章 会话管理——数据的临时档案馆
10.1 本章学习任务 192
10.2 SESSION——记录用户的浏览状态 193
10.2.1 创建会话 193
10.2.2 SESSION的生命周期 196
10.3 SESSION的高级套用 199
10.3.1 SESSION临时档案 199
10.3.2 SESSION的快取 200
10.3.3 SESSION资料库存储 201
10.4 COOKIE——客户端数据的永久存储 203
10.4.1 创建COOKIE 204
10.4.2 读取COOKIE 206
10.4.3 删除COOKIE 206
10.5 实战检验 207
10.5.1 通过SESSION判断用户的许可权 207
10.5.2 通过COOKIE实现自动登录 209
10.6 疑难解惑 210
10.6.1 延长SESSION的生命周期 210
10.6.2 缓解伺服器压力,提高网站访问速度 211
10.6.3 如何控制客户端COOKIE 211
10.6.4 COOKIE套用的注意事项 211
10.6.5 SESSION和COOKIE的区别 212
10.7 精彩回顾 212
第11章 档案系统——PHP档案掌门人
11.1 本章学习任务 214
11.1.1 本章体系结构 214
11.1.2 布置任务 214
11.2 解析档案操作方法 215
11.2.1 打开档案 215
11.2.2 读取档案 217
11.2.3 写入档案 221
11.2.4 关闭档案 223
11.3 阐述目录处理函式 223
11.3.1 打开目录 223
11.3.2 浏览目录 224
11.3.3 关闭目录 224
11.4 剖析档案上传、下载原理 226
11.4.1 控制上传档案——配置php.ini档案 226
11.4.2 判断上传档案——全局变数$_FILES 227
11.4.3 档案上传——move_uploaded_file()函式 228
11.4.4 档案下载 230
11.5 实战检验 230
11.5.1 通过文本档案统计网站访问量 230
11.5.2 规范化的档案上传 232
11.6 疑难解惑 234
11.6.1 如何访问远程档案 234
11.6.2 档案操作技术扩展 234
11.6.3 目录操作技术扩展 235
11.7 精彩回顾 235
第12章 面向对象——编程方法的革命
12.1 本章学习任务 238
12.1.1 追溯面向对象思想的来源 238
12.1.2 本章的学习任务 238
12.1.3 本章的实战任务 239
12.2 一切皆是对象 239
12.2.1 类 239
12.2.2 对象 240
12.2.3 面向对象的特点 240
12.3 类的声明 241
12.3.1 类的定义 241
12.3.2 成员属性 242
12.3.3 成员方法 243
12.4 类的实例化 243
12.4.1 创建对象 243
12.4.2 访问类中的成员 244
12.4.3 特殊的访问方法——“$this”和“::” 245
12.4.4 构造方法和析构方法 245
12.5 封装性 246
12.5.1 public(公共成员) 247
12.5.2 private(私有成员) 247
12.5.3 protected(保护成员) 248
12.6 继承性 248
12.6.1 类的继承——extends关键字 248
12.6.2 类的继承——parent::关键字 249
12.6.3 覆盖父类方法 250
12.7 抽象类和接口 251
12.7.1 抽象类 251
12.7.2 接口 252
12.8 多态性 254
12.8.1 通过继承实现多态 254
12.8.2 通过接口实现多态 255
12.9 面向对象——常用关键字 256
12.9.1 final关键字 256
12.9.2 static关键字——声明静态类成员 256
12.9.3 clone关键字——克隆对象 257
12.9.4 对象比较 258
12.9.5 instanceof关键字——对象类型检测 258
12.10 面向对象——常用魔术方法 258
12.10.1 __set()和__get()方法 259
12.10.2 __isset()和__unset()方法 259
12.10.3 __call()方法 259
12.10.4 __toString()方法 260
12.10.5 __autoload()方法 260
12.11 实战检验 261
12.11.1 封装一个资料库连线类 261
12.11.2 封装一个资料库操作类 262
12.12 疑难解惑 264
12.12.1 类名称的定义 264
12.12.2 自动载入对象 264
12.12.3 构造函式的妙用 264
12.13 精彩回顾 265
第13章 PHP与MySQL资料库——黄金组合
13.1 本章学习任务 268
13.1.1 系统学习任务 268
13.1.2 经典实战任务 268
13.2 MySQL概述 269
13.2.1 MySQL的特点 269
13.2.2 SQL和MySQL 269
13.3 MySQL伺服器的启动和关闭 270
13.3.1 启动MySQL伺服器 270
13.3.2 连线MySQL伺服器 271
13.3.3 关闭MySQL伺服器 271
13.4 MySQL资料库 272
13.4.1 创建资料库 272
13.4.2 选择资料库 273
13.4.3 删除资料库 273
13.5 MySQL数据表 274
13.5.1 创建表 274
13.5.2 查看錶 275
13.5.3 修改表 276
13.5.4 重命名表 277
13.5.5 删除表 277
13.6 MySQL数据 278
13.6.1 添加数据 278
13.6.2 修改数据 279
13.6.3 删除数据 279
13.6.4 查询数据 280
13.7 MySQL数据类型 282
13.7.1 数字类型 283
13.7.2 字元串类型 283
13.7.3 日期和时间类型 285
13.8 PHP操作MySQL资料库的步骤 285
13.9 PHP操作MySQL资料库的方法 286
13.9.1 套用mysql_connect()函式连线MySQL伺服器 286
13.9.2 套用mysql_select_db()函式选择MySQL资料库 287
13.9.3 套用mysql_query()函式执行SQL语句 288
13.9.4 套用mysql_fetch_array()函式将结果集返回到数组中 289
13.9.5 套用mysql_fetch_row()函式从结果集中获取一行作为枚举数组 290
13.9.6 套用mysql_num_rows()函式获取查询结果集中的记录数 291
13.10 实战检验 292
13.10.1 通过insert语句添加图书信息 292
13.10.2 通过select语句查询图书信息 294
13.11 疑难解惑 295
13.11.1 避免输出中文字元串时出现乱码 295
13.11.2 资料库编码格式的选择 296
13.12 精彩回顾 296
第14章 ADODB类库——资料库管家
14.1 本章学习任务 298
14.2 ADODB概述 299
14.3 熟悉操作流程 300
14.4 连线资料库系统和资料库 301
14.4.1 套用ADONewConnection()函式连线资料库系统 301
14.4.2 套用PConnect()函式持久化连线资料库 301
14.4.3 套用Connect()函式非持久化连线资料库 301
14.4.4 ADODB连线MySQL资料库 301
14.5 公共变数 302
14.6 操作SQL语句 303
14.6.1 套用execute()函式执行SQL语句 303
14.6.2 套用SelectLimit()函式控制select查询语句的起始位置 304
14.6.3 套用GetInsertSQL()、GetUpdateSQL()函式添加、更新数据 305
14.6.4 操作SQL语句的其他方法 306
14.7 控制结果集 307
14.7.1 控制指针的方法 307
14.7.2 控制结果集内容的方法 307
14.7.3 日期格式和数据类型的转换 309
14.8 ADODB中的分页 310
14.9 错误处理 310
14.10 实战检验 311
14.10.1 ADODB连线、运算元据库类 311
14.10.2 ADODB分页类 313
14.11 疑难解惑 316
14.11.1 本章程式运行的前提条件 316
14.11.2 一个小巧的分页函式——ADODB_Pager()函式 316
14.11.3 如何连线Microsoft SQL Server资料库 317
14.11.4 如何连线Access资料库 317
14.12 精彩回顾 317
第15章 Smarty模板——PHP程式的动静分离
15.1 本章学习任务 320
15.1.1 系统学习任务 320
15.1.2 经典实战任务 320
15.2 走进Smarty模板 321
15.2.1 Smarty模板引擎的下载 322
15.2.2 Smarty模板引擎的安装 323
15.2.3 Smarty模板引擎的配置 323
15.2.4 走进Smarty模板引擎 325
15.3 Smarty模板设计——静态页处理 326
15.3.1 基本语法(注释、函式和属性) 327
15.3.2 变数 327
15.3.3 变数调节器 328
15.3.4 组合修改器 329
15.3.5 内建函式(动态档案、模板档案的包含和流程控制语句) 330
15.3.6 自定义函式 334
15.3.7 配置档案 336
15.4 Smarty程式设计——动态档案操作 338
15.4.1 SMARTY_PATH常量 338
15.4.2 Smarty变数 338
15.4.3 Smarty方法 338
15.4.4 Smarty快取 339
15.5 实战检验 340
15.5.1 在Smarty中通过truncate方法截取字元串 341
15.5.2 套用Smarty+ADODB完成数据的分页显示 342
15.6 疑难解惑 344
15.6.1 快取的合理套用 344
15.6.2 什幺是较好的Smarty配置方案 344
15.7 精彩回顾 344
第16章 Zend Framework框架
16.1 本章学习任务 346
16.1.1 本章知识体系 346
16.1.2 本章的实践任务 346
16.2 Zend Framework的MVC介绍 347
16.2.1 Zend Framework概述 347
16.2.2 Zend Framework 常用组件 347
16.2.3 MVC原理 348
16.3 Zend Framework的MVC环境搭建 349
16.3.1 环境配置 349
16.3.2 框架结构 350
16.3.3 创建流程 350
16.3.4 Zend Framework的编码标準 353
16.4 Zend_Acl许可权管理 354
16.4.1 角色(role) 355
16.4.2 资源(resource) 355
16.4.3 Zend_Acl套用 355
16.5 Zend_Auth身份认证 356
16.5.1 Zend_Auth适配器 357
16.5.2 身份持久认证 358
16.5.3 资料库认证 360
16.6 Zend_Cache快取服务 364
16.6.1 Zend_Cache的原理 365
16.6.2 Zend_Cache前端 366
16.6.3 Zend_Cache后端 369
16.7 Zend_Db资料库操作 370
16.7.1 Zend_Db_Adapter资料库操作 370
16.7.2 Zend_Db_Table资料库操作 370
16.7.3 数据表类 372
16.8 Zend_File档案控制 375
16.8.1 使用Zend_File_Transfer_Adapter_Http实现POST方式档案上传 376
16.8.2 对上传档案的合理性验证 377
16.8.3 为上传增加过滤规则 378
16.9 Zend_Layout网站布局 378
16.9.1 Zend_Layout概述 378
16.9.2 Zend_Layout的使用方法 379
16.9.3 Zend_Layout套用实例 379
16.10 Zend_Paginator分页 381
16.10.1 Zend_Paginator简介 381
16.10.2 Zend_Paginator实现分页的方法 381
16.10.3 Zend_Paginator实现分页的套用 383
16.11 实战检验 385
16.11.1 使用Zend Framework实现用户身份的验证 385
16.11.2 使用Zend Framework实现查询结果的关键字描红显示 386
16.12 疑难解惑 388
16.12.1 MVC框架目录的命名 388
16.12.2 Zend_Cache组件的套用场合 389
16.13 精彩回顾 389
第2篇 範例演练篇
第17章 基础知识——学以致用
17.1 过滤HTML非法字元 394
17.1.1 範例功能演示 394
17.1.2 开发思路指引 394
17.1.3 专家难点解析 395
17.1.4 设计过程详解 395
17.1.5 範例开发手记 396
17.1.6 进阶与提高 396
17.2 上传图片并添加水印 397
17.2.1 範例功能演示 397
17.2.2 开发思路指引 397
17.2.3 专家难点解析 397
17.2.4 设计过程详解 399
17.2.5 範例开发手记 400
17.2.6 进阶与提高 401
17.3 利用WebBrowser控制项进行列印 401
17.3.1 範例功能演示 401
17.3.2 开发思路指引 402
17.3.3 专家难点解析 402
17.3.4 设计过程详解 402
17.3.5 範例开发手记 402
17.3.6 进阶与提高 403
17.4 套用正则表达式验证用户注册信息 404
17.4.1 範例功能演示 404
17.4.2 开发思路指引 404
17.4.3 专家难点解析 405
17.4.4 设计过程详解 406
17.4.5 範例开发手记 407
17.4.6 进阶与提高 408
17.5 套用JavaScript+GD2函式製作无刷新验证码 409
17.5.1 範例功能演示 409
17.5.2 开发思路指引 409
17.5.3 专家难点解析 410
17.5.4 设计过程详解 410
17.5.5 範例开发手记 411
17.5.6 进阶与提高 412
17.6 套用JavaScript实现複选框的全选、反选和不选 412
17.6.1 範例功能演示 412
17.6.2 开发思路指引 413
17.6.3 专家难点解析 413
17.6.4 设计过程详解 413
17.6.5 範例开发手记 414
17.6.6 进阶与提高 415
第18章 关键技术——百鍊成钢
18.1 JpGraph类库——创建3D饼形图 418
18.1.1 範例功能演示 418
18.1.2 开发思路指引 418
18.1.3 专家难点解析 419
18.1.4 设计过程详解 419
18.1.5 範例开发手记 420
18.1.6 进阶与提高 420
18.2 MD5加密——用户注册密码保护 421
18.2.1 範例功能演示 421
18.2.2 开发思路指引 421
18.2.3 专家难点解析 421
18.2.4 设计过程详解 422
18.2.5 範例开发手记 422
18.2.6 进阶与提高 423
18.3 AJAX无刷新分页 424
18.3.1 範例功能演示 424
18.3.2 开发思路指引 424
18.3.3 专家难点解析 425
18.3.4 设计过程详解 427
18.3.5 範例开发手记 429
18.3.6 进阶与提高 429
18.4 购物车 431
18.4.1 範例功能演示 431
18.4.2 开发思路指引 432
18.4.3 专家难点解析 432
18.4.4 设计过程详解 434
18.4.5 範例开发手记 437
18.4.6 进阶与提高 437
18.5 套用CKEditor网页编辑器 438
18.5.1 範例功能演示 438
18.5.2 开发思路指引 439
18.5.3 专家难点解析 439
18.5.4 设计过程详解 440
18.5.5 範例开发手记 441
18.5.6 进阶与提高 442
18.6 MySQL存储过程——用户注册 443
18.6.1 範例功能演示 443
18.6.2 开发思路指引 443
18.6.3 专家难点解析 443
18.6.4 设计过程详解 445
18.6.5 範例开发手记 445
18.6.6 进阶与提高 446
18.7 MySQL事务处理——银行安全转账 447
18.7.1 範例功能演示 447
18.7.2 开发思路指引 447
18.7.3 专家难点解析 448
18.7.4 设计过程详解 448
18.7.5 範例开发手记 449
18.7.6 进阶与提高 449
18.8 PHP国际化——开发支持中、英文的程式 450
18.8.1 範例功能演示 450
18.8.2 开发思路指引 450
18.8.3 专家难点解析 451
18.8.4 设计过程详解 452
18.8.5 範例开发手记 453
18.8.6 进阶与提高 454
第19章 新技术——熟能生巧
19.1 jQuery生成网页特效 456
19.1.1 範例功能演示 456
19.1.2 开发思路指引 456
19.1.3 专家难点解析 456
19.1.4 设计过程详解 458
19.1.5 範例开发手记 459
19.1.6 进阶与提高 459
19.2 jQuery製作级联选单 459
19.2.1 範例功能演示 459
19.2.2 开发思路指引 460
19.2.3 专家难点解析 460
19.2.4 设计过程详解 461
19.2.5 範例开发手记 462
19.2.6 进阶与提高 462
19.3 jQuery验证表单元素 463
19.3.1 範例功能演示 463
19.3.2 开发思路指引 464
19.3.3 专家难点解析 464
19.3.4 设计过程详解 465
19.3.5 範例开发手记 467
19.3.6 进阶与提高 467
19.4 register_function()方法——注册模板函式 468
19.4.1 範例功能演示 468
19.4.2 开发思路指引 468
19.4.3 专家难点解析 468
19.4.4 设计过程详解 469
19.4.5 範例开发手记 471
19.4.6 进阶与提高 471
19.5 zend_mail传送邮件——激活注册用户 472
19.5.1 範例功能演示 472
19.5.2 开发思路指引 472
19.5.3 专家难点解析 473
19.5.4 设计过程详解 474
19.5.5 範例开发手记 475
19.5.6 进阶与提高 475
19.6 PHP伪静态——隐藏PHP档案扩展名 476
19.6.1 範例功能演示 476
19.6.2 开发思路指引 476
19.6.3 专家难点解析 477
19.6.4 设计过程详解 477
19.6.5 範例开发手记 479
19.6.6 进阶与提高 479
第3篇 项目实战篇
第20章 新闻发布系统——毕业设计的首选
20.1 新闻发布系统概述 484
20.2 开发背景 484
20.3 需求分析 484
20.3.1 功能分析 484
20.3.2 运行环境 484
20.4 功能结构 485
20.5 资料库设计 485
20.5.1 资料库概念设计 485
20.5.2 创建资料库及数据表 487
20.6 MVC框架结构的搭建 488
20.6.1 MVC开发模式介绍 488
20.6.2 Zend Framework的MVC目录结构 489
20.6.3 Zend Framework的MVC结构创建过程 490
20.7 技术攻关 492
20.7.1 站内搜寻——使用空格分隔多个关键字 492
20.7.2 关键字描红 495
20.7.3 隐藏PHP档案后缀——伪静态技术 497
20.8 前台首页设计 498
20.8.1 前台首页概述 498
20.8.2 前台首页技术分析 499
20.8.3 前台首页的实现过程 499
20.9 后台管理模组设计 502
20.9.1 后台管理模组概述 502
20.9.2 后台管理模组技术分析 503
20.9.3 管理员登录实现过程 504
20.9.4 新闻管理模组实现过程 505
20.9.5 用户管理模组实现过程 506
20.10 程式调试与错误处理 506
20.10.1 语法错误 507
20.10.2 语义错误 509
20.10.3 注释错误 509
20.10.4 运行错误 509
20.10.5 逻辑错误 511
20.10.6 错误提示页面 511
20.11 开发 512
第21章 明日企业网——企业网站开发模板
21.1 明日企业网概述 514
21.2 开发背景 514
21.3 需求分析 514
21.4 功能结构 515
21.5 资料库设计 516
21.5.1 资料库概念设计 516
21.5.2 创建资料库及数据表 517
21.6 技术攻关 519
21.6.1 Smarty模板 520
21.6.2 最简单的网页框架 521
21.6.3 ADODB类库 521
21.6.4 封装分页类 522
21.7 首页设计 523
21.7.1 首页概述 523
21.7.2 首页技术分析 523
21.7.3 首页的实现过程 524
21.8 产品展示设计 525
21.8.1 产品展示概述 525
21.8.2 产品展示技术分析 527
21.8.3 产品展示实现过程 527
21.9 后台管理系统设计 529
21.9.1 后台管理系统概述 529
21.9.2 后台管理系统技术分析 529
21.9.3 后台管理系统实现过程 531
21.10 程式调试与错误处理 535
21.10.1 SQL语句的返回机制 535
21.10.2 错误处理 536
21.11 开发 536
第22章 明日知道——程式设计师的十万个为什幺
22.1 明日知道概述 538
22.2 开发背景 538
22.3 需求分析 538
22.4 功能结构 538
22.5 资料库设计 539
22.5.1 资料库分析 539
22.5.2 资料库概念设计 539
22.5.3 创建资料库及数据表 541
22.6 技术攻关 542
22.6.1 类似Google搜寻引擎的搜寻条 543
22.6.2 使用空格分隔多关键字 546
22.6.3 关键字描红 549
22.6.4 製作线上编辑器 550
22.7 MVC框架结构搭建 553
22.8 首页设计 554
22.8.1 首页概述 554
22.8.2 首页技术分析 554
22.8.3 首页的实现过程 555
22.9 用户模组设计 557
22.9.1 用户模组概述 557
22.9.2 用户模组技术分析 557
22.9.3 用户注册的实现过程 559
22.9.4 用户登录的实现过程 560
22.10 发表问题模组设计 562
22.10.1 发表问题模组概述 563
22.10.2 发表问题模组技术分析 563
22.10.3 发表问题模组实现过程 564
22.11 回复问题模组设计 566
22.11.1 回复问题模组概述 566
22.11.2 回复问题模组技术分析 566
22.11.3 回复问题模组实现过程 567
22.12 程式调试与错误处理 568
22.12.1 项目开发过程中常见错误及解决方法 568
22.12.2 自定义错误页面 569
22.13 开发 569
第23章 明日编程词典——线上体验版
23.1 明日编程词典概述 572
23.2 开发背景 572
23.3 需求分析 572
23.4 功能结构 572
23.5 资料库设计 573
23.5.1 创建资料库 573
23.5.2 创建数据表 574
23.5.3 分离、附加资料库 575
23.6 技术攻关 576
23.6.1 树状导航选单设计 577
23.6.2 向Flash中传递参数 578
23.6.3 Smarty注册模板函式——读取档案 580
23.6.4 框架设计网站布局 581
23.7 Smarty模板 583
23.8 ADODB类库 584
23.9 首页设计 585
23.9.1 首页概述 585
23.9.2 首页技术分析 586
23.9.3 首页的实现过程 586
23.10 网站模组导航设计 586
23.10.1 网站模组导航概述 587
23.10.2 网站模组导航技术分析 587
23.10.3 网站模组导航实现过程 588
23.11 内容树状导航设计 589
23.11.1 内容树状导航概述 589
23.11.2 内容树状导航技术分析 590
23.11.3 内容树状导航实现过程 591
23.12 内容展示区设计 594
23.12.1 内容展示区概述 594
23.12.2 内容展示区技术分析 594
23.12.3 内容展示区实现过程 594
23.13 程式调试与错误处理 595
23.14 开发 595
第4篇 商业系统篇
第24章 明日科技书店
24.1 明日科技书店概述 600
24.2 开发背景 600
24.3 需求分析 600
24.4 功能结构图 601
24.5 系统流程图 602
24.6 开发环境 603
24.7 资料库设计 603
24.7.1 资料库分析 603
24.7.2 创建资料库 603
24.7.3 创建数据表 604
24.7.4 数据表的结构 604
24.8 功能模组构思 606
24.9 公共类设计 607
24.9.1 资料库连线类 607
24.9.2 资料库管理类 609
24.9.3 Smarty模板引擎配置类 610
24.9.4 购物车类 610
24.9.5 分页类 612
24.9.6 工具类 613
24.10 首页设计 615
24.10.1 首页概述 615
24.10.2 首页技术分析 616
24.10.3 首页实现过程 617
24.11 用户模组设计 618
24.11.1 用户模组概述 618
24.11.2 用户注册 618
24.11.3 用户登录 621
24.11.4 用户中心 623
24.11.5 找回登录密码 625
24.12 图书展示模组设计 626
24.12.1 图书分类展示 626
24.12.2 特别图书展示 629
24.12.3 图书试读展示 630
24.12.4 图书详细信息展示 632
24.13 图书订购模组设计 635
24.13.1 购物车的实现 635
24.13.2 填写收货人信息 638
24.13.3 确认订购信息 639
24.13.4 选择支付方式 640
24.13.5 确认支付信息 641
24.14 后台登录页设计 642
24.14.1 后台登录页概述 642
24.14.2 后台登录页实现过程 643
24.15 系统管理模组 644
24.15.1 系统信息设定 644
24.15.2 更改管理员密码 645
24.16 图书类别管理模组 645
24.16.1 图书大类管理 646
24.16.2 图书小类管理 647
24.16.3 出版社分类管理 649
24.17 图书管理模组 651
24.17.1 图书信息管理 651
24.17.2 图书试读管理 654
24.18 用户信息管理模组 655
24.18.1 用户信息管理 655
24.18.2 用户反馈信息管理 656
24.19 订单信息管理模组 656
24.19.1 订单信息列表管理 657
24.19.2 订单详细信息管理 657
24.20 程式调试与错误处理 658
24.21 编写用户使用手册 659
24.22 系统发布 662
24.23 开发 664