标题：PHP项目开发全程实录（第二版）
图书信息
作者：明日科技 
出版社: 清华大学出版社; 第1版 (2011年1月1日) 
  　　丛书名: 软件项目开发全程实录丛书 
平装: 594页 
正文语种: 汉语 
开本: 16 
ISBN: 9787302241928, 7302241929 
条形码: 9787302241928 
产品尺寸及重量: 26 x 21 x 3.2 cm ; 1.2 Kg 
ASIN: B004FPXU3U 
内容简介
《PHP项目开发案例全程实录》以九九度供求信息网、BCTY365网上社区、办公自动化管理系统、电子商务平台网、网络在线考试系统、物流配送信息网、学校图书馆管理系统、博客管理系统、企业快信系统、online影视365网、明日知道网站和电子商务网站12个实际项目开发程序为案例，从软件工程的角度出发，按照项目的开发顺序，系统、全面地介绍程序开发流程。从开发背景、需求分析、系统功能分析、数据库分析、数据库设计、网站开发到网站发布，对每一过程都进行了详细的介绍。 
《PHP项目开发案例全程实录》案例涉及行业广泛，实用性非常强，通过本书的学习，读者可以了解各个行业的特点，能够针对某一行业进行网站开发，也可以通过光盘中提供的案例源代码和数据库进行二次开发，以减少开发系统所需要的时间。本书光盘提供12个项目开发完整案例的同步教学视频，12个项目开发完整案例及其源程序，本书的服务网站还提供了内容丰富的素材库、题库、模块库、案例库和本书的答疑服务。《PHP项目开发案例全程实录》是一本项目开发案例方面的参考书，适合有基本编程知识但还没有项目开发经验的软件开发初学者使用，尤其适合高校在校生进行毕业设计、课题设计时做参考。 
作者简介
明日科技,专业的软件开发公司，该公司是一家以计算机软件技术为核心的高科技企业，是专业的应用软件开发和服务企业，多年来始终致力于行业管理软件开发、行业电子商务网站开发等领域，涉及生产、管理、控制、仓储、物流、营销、服务等行业，公司现有各类软件工程师50余人。另外，公司还致力于软件技术的普及和传播，先后创作软件开发类图书多部，其中多部图书荣获“全国优秀畅销书”奖。 
图书目录
第1章 九九度供求信息网（Apache+PHP+ 
phpMyAdmin+MySQL 5.0实现） 1 
视频讲解：1小时50分钟 
1.1 开发背景 2 
1.2 系统分析 2 
1.2.1 需求分析 2 
1.2.2 可行性分析 2 
1.2.3 编写项目计划书 3 
1.3 系统设计 5 
1.3.1 系统目标 5 
1.3.2 系统功能结构 6 
1.3.3 系统流程图 7 
1.3.4 系统预览 7 
1.3.5 开发环境 8 
1.3.6 文件夹组织结构 9 
1.4 在Windows操作系统下搭建PHP开发 
环境 9 
1.4.1 在Windows下应用AppServ快速配置 
PHP开发环境 9 
1.4.2 Windows下Apache的安装配置 12 
1.4.3 Windows下MySQL的安装配置 16 
1.4.4 Windows下PHP的安装配置 17 
1.4.5 在Windows下设置IIS+PHP的执行环境 19 
1.5 数据库设计 22 
1.5.1 数据库分析 22 
1.5.2 数据库概念设计 22 
1.5.3 使用PowerDesigner建模 24 
1.5.4 创建数据库及数据表 26 
1.6 单元测试 27 
1.6.1 单元测试概述 28 
1.6.2 单元测试的优点 28 
1.7 前台首页设计 28 
1.7.1 前台首页概述 28 
1.7.2 前台首页技术分析 30 
1.7.3 前台首页的实现过程 31 
1.8 免费供求信息发布模块设计 32 
1.8.1 免费供求信息发布模块概述 32 
1.8.2 免费供求信息发布模块技术分析 32 
1.8.3 免费供求信息发布模块的实现过程 35 
1.9 信息检索模块设计 37 
1.9.1 信息检索模块概述 37 
1.9.2 信息检索模块技术分析 38 
1.9.3 信息检索模块的实现过程 40 
1.10 后台首页设计 43 
1.10.1 后台首页概述 43 
1.10.2 后台首页技术分析 44 
1.10.3 后台首页的实现过程 46 
1.11 付费供求信息发布模块设计 47 
1.11.1 付费供求信息发布模块概述 47 
1.11.2 付费供求信息发布模块技术分析 48 
1.11.3 付费供求信息发布模块的实现过程 48 
1.12 付费信息管理模块设计 50 
1.12.1 付费信息管理模块概述 50 
1.12.2 付费信息管理模块技术分析 51 
1.12.3 付费信息显示的实现过程 52 
1.12.4 付费信息审核的实现过程 55 
1.12.5 付费信息删除的实现过程 55 
1.12.6 单元测试 56 
1.13 网站发布 58 
1.14 开发技巧与难点分析 59 
1.14.1 查询关键字描红功能 59 
1.14.2 表单数据的提交方式 61 
1.15 MySQL数据库技术专题 62 
1.15.1 创建和删除数据库 62 
1.15.2 创建和删除数据表 63 
1.16 本章总结 64 
第2章 BCTY365网上社区（Apache+PHP+ 
phpMyAdmin+MySQL 5.0实现） 65 
视频讲解：2小时24分钟 
2.1 开发背景 66 
2.2 系统分析 66 
2.2.1 需求分析 66 
2.2.2 可行性分析 66 
2.2.3 编写项目计划书 67 
2.3 系统设计 69 
2.3.1 系统目标 69 
2.3.2 系统功能结构 69 
2.3.3 系统预览 69 
2.3.4 开发环境 72 
2.3.5 文件夹组织结构 72 
2.4 在Linux操作系统下搭建PHP开发 
环境 72 
2.4.1 Linux下Apache的安装配置 73 
2.4.2 Linux下MySQL的安装配置 74 
2.4.3 Linux下PHP的安装配置 75 
2.5 数据库设计 77 
2.5.1 数据库分析 77 
2.5.2 数据库概念设计 77 
2.5.3 创建数据库及数据表 78 
2.6 公共模块设计 82 
2.6.1 数据库连接文件 82 
2.6.2 将文本中的字符转换为HTML标识符 83 
2.7 前台首页设计 84 
2.7.1 前台首页概述 84 
2.7.2 前台首页技术分析 84 
2.7.3 前台首页的实现过程 87 
2.8 注册模块设计 89 
2.8.1 注册模块概述 89 
2.8.2 注册模块技术分析 89 
2.8.3 注册模块的实现过程 91 
2.9 技术支持模块设计 92 
2.9.1 技术支持模块概述 92 
2.9.2 技术支持模块技术分析 93 
2.9.3 常见问题的实现过程 94 
2.9.4 客户反馈的实现过程 95 
2.9.5 单元测试 96 
2.10 在线订购模块设计 97 
2.10.1 在线订购模块概述 97 
2.10.2 在线订购模块技术分析 97 
2.10.3 购物车的实现过程 100 
2.10.4 商品订单的实现过程 102 
2.10.5 单元测试 103 
2.11 社区论坛模块设计 104 
2.11.1 社区论坛模块概述 104 
2.11.2 社区论坛模块技术分析 105 
2.11.3 论坛分类的实现过程 105 
2.11.4 论坛帖子浏览的实现过程 107 
2.11.5 论坛帖子发布的实现过程 110 
2.11.6 论坛帖子回复的实现过程 113 
2.11.7 单元测试 114 
2.12 后台首页设计 115 
2.12.1 后台首页概述 115 
2.12.2 后台首页技术分析 115 
2.12.3 后台首页的实现过程 117 
2.13 编程词典管理模块设计 118 
2.13.1 编程词典管理模块概述 118 
2.13.2 编程词典管理模块技术分析 119 
2.13.3 添加编程词典的实现过程 120 
2.13.4 编辑编程词典的实现过程 122 
2.14 软件升级管理模块设计 124 
2.14.1 软件升级管理模块概述 124 
2.14.2 软件升级管理模块技术分析 124 
2.14.3 软件升级包上传的实现过程 125 
2.14.4 软件升级包删除的实现过程 126 
2.15 在Linux系统下发布网站 127 
2.16 开发技巧与难点分析 129 
2.16.1 管理员权限的设置 129 
2.16.2 帖子置顶的设置 130 
2.17 在线支付技术专题 131 
2.18 本章总结 135 
第3章 办公自动化管理系统（Apache+PHP+ 
phpMyAdmin+MySQL 5.0实现） 136 
视频讲解：1小时40分钟 
3.1 开发背景 137 
3.2 需求分析 137 
3.3 系统设计 137 
3.3.1 系统目标 137 
3.3.2 系统功能结构 138 
3.3.3 系统功能预览 139 
3.3.4 系统流程图 140 
3.3.5 开发环境 141 
3.3.6 文件夹组织结构 142 
3.4 数据库设计 142 
3.4.1 数据库分析 142 
3.4.2 数据库概念设计 143 
3.4.3 数据库物理结构设计 143 
3.5 公共模块设计 145 
3.5.1 JavaScript脚本 145 
3.5.2 自定义函数 146 
3.6 前台首页设计 147 
3.6.1 前台首页概述 148 
3.6.2 前台首页技术分析 148 
3.6.3 前台首页的实现过程 150 
3.7 人事消息模块设计 151 
3.7.1 人事消息模块概述 151 
3.7.2 人事消息模块技术分析 151 
3.7.3 消息管理的实现过程 152 
3.7.4 意见箱的实现过程 156 
3.8 考勤管理模块设计 159 
3.8.1 考勤管理模块概述 160 
3.8.2 考勤管理模块技术分析 161 
3.8.3 上下班登记的实现过程 162 
3.8.4 设置时间的实现过程 166 
3.9 后台首页设计 168 
3.9.1 后台首页概述 168 
3.9.2 后台首页技术分析 169 
3.9.3 后台首页的实现过程 169 
3.10 部门管理模块设计 170 
3.10.1 部门管理模块概述 170 
3.10.2 部门管理模块技术分析 171 
3.10.3 部门查看的实现过程 173 
3.10.4 部门添加的实现过程 176 
3.10.5 单元测试 178 
3.11 系统管理模块设计 178 
3.11.1 系统管理模块概述 178 
3.11.2 系统管理模块技术分析 179 
3.11.3 系统日志的实现过程 180 
3.11.4 数据备份的实现过程 182 
3.12 开发技巧与难点分析 183 
3.12.1 使用JavaScript关联多选列表框 183 
3.12.2 用户组设置 185 
3.13 MySQL数据备份专题 186 
3.14 本章总结 188 
第4章 电子商务平台网（Apache+PHP+ 
phpMyAdmin+MySQL 5.0实现） 189 
视频讲解：1小时26分钟 
4.1 开发背景 190 
4.2 系统分析 190 
4.2.1 需求分析 190 
4.2.2 可行性分析 191 
4.3 系统设计 191 
4.3.1 系统目标 191 
4.3.2 系统功能结构 192 
4.3.3 购物流程图 193 
4.3.4 系统预览 194 
4.3.5 开发环境 195 
4.3.6 文件夹组织结构 195 
4.4 数据库设计 196 
4.4.1 数据库分析 196 
4.4.2 数据库概念设计 196 
4.4.3 创建数据库及数据表 198 
4.5 公共模块设计 202 
4.5.1 数据库连接文件 202 
4.5.2 CSS样式表文件 203 
4.6 前台首页设计 204 
4.6.1 前台首页概述 205 
4.6.2 前台首页技术分析 205 
4.6.3 前台首页的实现过程 208 
4.7 商品展示模块设计 208 
4.7.1 商品展示模块概述 209 
4.7.2 商品展示模块技术分析 209 
4.7.3 商品分类展示的实现过程 211 
4.7.4 最新商品展示的实现过程 212 
4.7.5 查看商品详细信息的实现过程 213 
4.7.6 单元测试 214 
4.8 购物车模块设计 216 
4.8.1 网站购物车概述 216 
4.8.2 网站购物车技术分析 217 
4.8.3 添加至购物车的实现过程 217 
4.8.4 查看购物车的实现过程 219 
4.8.5 从购物车中移去指定商品的实现过程 221 
4.8.6 修改商品购买数量的实现过程 222 
4.8.7 清空购物车的实现过程 222 
4.8.8 收银台结账的实现过程 223 
4.8.9 生成商品订单的实现过程 225 
4.8.10 单元测试 227 
4.9 后台首页设计 228 
4.9.1 后台首页概述 228 
4.9.2 后台首页技术分析 228 
4.9.3 后台首页的实现过程 230 
4.10 客户订单信息管理模块设计 231 
4.10.1 客户订单信息管理模块概述 231 
4.10.2 客户订单信息管理模块技术分析 231 
4.10.3 查看客户订单信息的实现过程 232 
4.10.4 执行客户订单信息的实现过程 234 
4.10.5 打印客户订单信息的实现过程 236 
4.10.6 查找客户订单信息的实现过程 237 
4.11 开发技巧与难点分析 239 
4.11.1 防止非法用户绕过系统登录直接进入 
系统 239 
4.11.2 检测用户名是否已经注册 240 
4.11.3 用户安全退出 241 
4.12 加密技术专题 241 
4.12.1 URL编码加密技术 241 
4.12.2 base64编码加密技术 242 
4.12.3 crypt()加密技术 242 
4.12.4 MD5加密技术 243 
4.13 本章总结 243 
第5章 网络在线考试系统（Apache+PHP+ 
Ajax+SQL Server 2000实现） 244 
视频讲解：1小时23分钟 
5.1 开发背景 245 
5.2 系统分析 245 
5.2.1 需求分析 245 
5.2.2 可行性分析 245 
5.3 系统设计 246 
5.3.1 系统目标 246 
5.3.2 系统功能结构 246 
5.3.3 系统流程图 246 
5.3.4 系统预览 248 
5.3.5 开发环境 249 
5.3.6 文件夹组织结构 249 
5.4 数据库设计 249 
5.4.1 数据库分析 249 
5.4.2 数据库概念设计 250 
5.4.3 数据库物理结构 251 
5.5 前台首页设计 252 
5.5.1 前台首页概述 252 
5.5.2 前台首页技术分析 253 
5.5.3 前台首页的实现过程 253 
5.6 考生信息模块设计 254 
5.6.1 考生信息模块概述 254 
5.6.2 考生信息模块的技术分析 255 
5.6.3 考生注册的实现过程 257 
5.6.4 单元测试 261 
5.7 在线考试模块设计 261 
5.7.1 在线考试模块的概述 261 
5.7.2 在线考试模块的技术分析 262 
5.7.3 应用Ajax在线答题的实现过程 264 
5.7.4 分数统计和成绩保存的实现过程 267 
5.7.5 单元测试 267 
5.8 后台首页设计 268 
5.8.1 后台首页概述 268 
5.8.2 后台首页技术分析 269 
5.8.3 后台首页的实现过程 269 
5.9 考题信息管理模块设计 270 
5.9.1 考题信息管理模块的概述 270 
5.9.2 考题信息管理模块的技术分析 270 
5.9.3 考题信息添加的实现过程 271 
5.9.4 查询考题信息的实现过程 272 
5.10 开发技巧与难点分析 276 
5.10.1 考生登录编号的获取 276 
5.10.2 通过Ajax技术实现计时与显示剩余 
时间 276 
5.11 Ajax无刷新技术专题 278 
5.11.1 Ajax概述 278 
5.11.2 Ajax的优点 279 
5.11.3 Ajax的工作原理 279 
5.11.4 Ajax的工作流程 281 
5.11.5 Ajax中的核心技术XMLHttpRequest 281 
5.12 本章总结 282 
第6章 物流配送信息网（Apache+PHP+ 
phpMyAdmin+MySQL 5.0实现） 283 
视频讲解：1小时27分钟 
6.1 开发背景 284 
6.2 系统分析 284 
6.2.1 需求分析 284 
6.2.2 可行性分析 284 
6.3 系统设计 285 
6.3.1 系统目标 285 
6.3.2 系统功能结构 285 
6.3.3 系统预览 285 
6.3.4 开发环境 288 
6.3.5 文件夹组织结构 288 
6.4 数据库设计 288 
6.4.1 数据库分析 289 
6.4.2 数据库概念设计 289 
6.4.3 创建数据库及数据表 290 
6.5 网站首页设计 292 
6.5.1 网站首页概述 292 
6.5.2 网站首页技术分析 293 
6.5.3 网站首页的实现过程 294 
6.6 车源信息查询模块设计 295 
6.6.1 车源信息查询模块概述 295 
6.6.2 车源信息查询模块技术分析 295 
6.6.3 车源信息查询模块的实现过程 297 
6.6.4 单元测试 297 
6.7 发货单管理模块设计 298 
6.7.1 发货单管理模块概述 298 
6.7.2 发货单管理模块技术分析 299 
6.7.3 发货单填单的实现过程 301 
6.7.4 发货单查询的实现过程 303 
6.7.5 发货单打印的实现过程 305 
6.7.6 单元测试 306 
6.8 回执单验收管理模块设计 307 
6.8.1 回执单模块概述 307 
6.8.2 回执单模块技术分析 307 
6.8.3 回执单验收模块的实现过程 309 
6.9 基础信息管理模块设计 310 
6.9.1 基础信息管理模块概述 310 
6.9.2 基础信息管理模块技术分析 311 
6.9.3 客户信息管理的实现过程 312 
6.9.4 车源信息管理的实现过程 313 
6.10 开发技巧与难点分析 316 
6.10.1 应用存储过程实现管理员登录 316 
6.10.2 应用正则表达式验证电话号码 318 
6.11 报表打印技术 319 
6.12 本章总结 322 
...... 
图书序言
前 言（第2版） 
编写背景 
“软件项目开发全程实录”丛书（第1版）出版两年来，受到了广大读者的热烈欢迎，目前该丛书已经累计销售近10万册，成为近年来最畅销的编程案例类丛书之一。应读者朋友的要求，我们根据最新的市场变化并结合广大读者的建议，编写了该丛书的第2版。 
从技术背景来看，PHP是全球最普及、应用最广泛的互联网开发语言之一，它有开放的源代码，独特的语法结构，包含了C、Java、Perl等语言的特点，具有多种数据库的支持，并且支持跨平台的操作，支持面向对象的编程，而且是完全免费的。PHP越来越受到广大程序员的青睐和认同，正在逐渐成为程序开发者使用的主流语言。 
为了帮助众多学习PHP的读者提高PHP项目开发水平，笔者精心编著了本书。本书充分利用PHP在应用程序的设计和开发上的灵活高效的特点，以12个实用的网络程序为案例，详细地讲解整个项目的开发过程。 
本书内容 
本书共12章。第1、2、3、4、6、7、8章结合目前最常用的MySQL5.0数据库分别开发了九九度供求信息网、BCTY365网上社区系统、办公自动化管理系统、电子商务平台、物流配送信息网、学校图书馆管理系统和博客管理系统；第5章应用目前最流行的Ajax技术结合最常用的SQLServer2000数据库开发在线考试网，从而实现一个无刷新的在线考试系统；第9章结合最新的Access2003数据库开发企业快信网，其中应用WebService服务实现短信的发送，应用imap电子邮件系统函数实现邮件的收发；第10章结合目前流行的ADODB类库开发支持不同数据库的Online影视365网，可以根据用户的需求更换不同类型的数据库；第11章应用ZendFramework框架开发一个明日知道网站，打造一个更加专业化的编程技术搜索引擎。第12章应用Smarty模板和ADODB类库技术开发一个电子商务网站。 
第2版所做的改进 
在第2版中，我们主要遵循以下原则对第1版内容进行修改。 
增加了内容 
针对目前PHP语言得到越来越广泛的应用的特点，我们增加明日知道搜索引擎和电子商务网站两个系统，以便读者更好地学习PHP知识。 
使用最新技术 
在第1版中项目开发应用的是PHP、MySQL、SQLServer和ADODB等技术，在第2版中引入ZendFramework框架、Smarty模板和Ajax技术，开发目前最具实用性的Web程序，以适应读者的需要。 
修改了第1版中的错误 
对于第1版中出现的错误，或者运行异常的程序进行修订，以便读者更好地学习。 
本书特点 
视频讲解 
对于初学者来说，视频讲解是最好的导师，它能够引导初学者快速入门，使初学者感受到编程的快乐和成就感，进一步增强学习的信心。鉴于此，本书为每一个案例都配备了视频讲解，初学者可以通过视频讲解实现案例中的功能。 
案例典型 
本书案例均从实际应用角度出发，应用了当前流行的技术，涉及的知识广泛，读者可以从每个案例中积累丰富的实战经验。 
代码注释 
为了便于读者阅读程序代码，书中的代码几乎每行都有注释，并且整齐地纵向排列，使读者快速地领会作者的意图。 
代码贴士 
案例类书籍通常会包含大量的程序代码，冗长的代码往往令初学者望而生畏。为了方便读者阅读和理解代码，本书避免了连续大篇幅的代码，将其分割为多个部分，并对重要的变量、方法和知识点设计了颇具特色的“代码贴士”。 
知识扩展 
为了增加读者的编程经验和技巧，书中每个案例都标记有“注意”、“技巧”等提示信息，并且在每章内容中都提供一项专题技术。 
适合读者 
本书定位于想要使用PHP进行网站开发的初中级读者，一些案例对于高级用户也具有很好的参考价值。同时，本书也特别适合作为大专院校计算机专业广大师生的案例参考书。对于初学者来说不必担心书中的案例做不出来，因为本书附带光盘中的视频录像会引导您去做，再结合书中的知识讲解，相信初学者不但会做案例程序，而且能够根据理解自行设计类似的程序。 
本书约定 
由于篇幅有限，本书每章并不能逐一介绍案例中的各模块。作者选择其中基础和典型的模块进行介绍，对于功能重复的模块，由于技术、设计思路和实现过程基本相同，因此没有在书中体现。 
本书中涉及的功能模块在光盘中都附带有视频录像，方便读者学习。 
作者队伍 
本书由明日科技PHP软件开发团队组织编写。明日科技是一家以计算机软件技术为核心的高科技企业，是专业的应用软件开发和服务企业，多年来始终致力于行业管理软件开发、行业电子商务网站开发等领域，涉及生产、管理、控制、仓贮、物流、营销、服务等行业。另外，公司还致力于软件技术的普及和传播。 
参与本书编写的程序员有：刘中华、潘凯华、杨明、董大永、尹强、李继业、张磊、赛奎春、高春艳、宋坤、刘锐宁、梁水、李伟明、王小科、王军、赵会东、刘彬彬、安剑、孙秀梅、巩建华、房大伟、吕双、刘云峰、王国辉、李钟尉、张振坤、陈丹丹、卢翰、白伟明、刘欣、李慧、梁晓岚、杨丽、顾丽丽、刘龄龄、于长凤、张彦国、王乐乐、陈英、刘莹、李贺等。