标题：PHP项目开发案例整合
图书信息
实战突击：PHP项目开发案例整合(含DVD光盘1张)  明日科技 等 编著
ISBN 978-7-121-14114-0  
2011年8月出版
定价：89.8元(含DVD光盘1张) 
16开
808页
内 容 简 介
本书以会议记录管理系统、留言本、在线投票系统、个人网络日记、在线论坛、博客、物流管理系统、在线考试管理系统、明日编程词典、明日科技企业网站、明日软件导航系统、播客、在线音乐系统、电子邮件系统、BCTY365网上社区、易查供求信息网、图书馆管理系统、办公自动化管理系统、电子商务网站、明日知道网站和新闻发布系统21个实际项目开发程序为案例，从软件工程的角度出发，按照项目的开发顺序，系统、全面地介绍了程序的开发流程。从开发背景、需求分析、系统功能分析、数据库分析、数据库结构、系统开发到系统的编译发行，每一过程都进行了详细的介绍。
本书所附配套光盘提供了书中所有案例的全部源代码，所有源代码都经过精心调试，在Windows 2000、Windows XP和Windows 2003下全部通过，保证能够正常运行。
本书案例涉及行业广泛，实用性非常强，通过对本书的学习，读者可以了解各个行业的特点，能够针对某一行业进行软件开发，也可以通过光盘中提供的案例源代码和数据库进行二次开发，以减少开发系统所需要的时间。
前 言
PHP 是一种在服务器端执行的嵌入HTML文档的脚本语言。自1994年诞生至今，已成为全球十分普及的互联网开发语言之一。随着PHP技术的成熟和完善，PHP已经从一种针对网络开发的计算机语言发展成为一个适合于企业级部署的技术平台，IBM、Cisco、西门子、Adobe等公司均在使用PHP技术。在权威机构的调查报告中，PHP技术在全球互联网社区领域的应用位居第一。在Alexa中文网站500强中，394家网站全部或部分应用着PHP技术。
『成书缘由』
熟话说“巧妇难为无米之炊”，作为一名有经验的程序开发人员，都有自己积累的编程资源。在软件开发过程中，他们可以借助编程资源每天写出上万行代码，还可以利用已有的项目资源，迅速完成一个新产品的开发。可以说，编程资源是开发高手的左膀右臂。离开了这些编程资源，开发高手的功力将大大降低。
目前初学编程者普遍缺乏编程资源，尤其是项目开发资源和项目开发经验。为此，我们编写了本书。本书精选了21个实用软件项目，涵盖了ThinkPHP框架应用项目、Zend Framework框架应用项目、PHP+MySQL实战开发项目，是进行Web项目开发必备的参考书。通过本书，读者不但可以快速提升开发能力和经验，还可以快速组建自己的项目资源库。
『本书内容』
本书分为3篇21章内容，共计21个实践项目。所选项目均来源于开发一线，具有很好的实践价值。本书具体内容如图1所示。
第一篇：初级项目篇。这一篇介绍了会议记录管理系统、留言本、在线投票系统、个人网络日记等4个初级项目。
第二篇：中级项目篇。这一篇介绍了在线论坛、博客、物流管理系统、在线考试管理系统、明日编程词典、明日科技企业网站、明日软件导航系统、播客、在线音乐网站、电子邮件系统等10个中级项目。
第三篇：高级项目篇。这一篇介绍了BCTY365网上社区、易查供求信息网、图书馆管理系统、办公自动化管理系统、电子商务网站、明日知道网站、新闻发布系统等7个高级项目。
『本书特色』
 项目丰富，实用超值。本书精选了21个项目，涵盖了项目开发中应用的各方面技术，将这些项目稍加修改，即可形成一个完整的商业系统项目。
 易学、易用。本书中的每个项目都提供了关键代码解析（对代码中重要的对象、方法、语句等进行重点介绍），读者在阅读时可以透彻理解相关代码，活学活用。
 编码规范，注释详尽。本书程序编码规范，几乎所有代码都提供了详细注释。
 提供15小时视频录像。本书提供了15小时的项目开发视频录像，读者可以边看、边学，快速提高。
『本书适用人群』
本书非常适合以下人员阅读：
  从事PHP编程行业的开发人员         相关培训机构的老师和学员
  即将走向相关工作岗位的大学毕业生       PHP编程爱好者
  有一定编程基础，想进一步提高技能的人员   大、中专院校的老师和学生
『本书作者』
本书由明日科技组织编写，参加编写的有潘凯华、刘欣、李慧、高春艳、王小科、王军、赵会东、李继业、赛奎春、孙秀梅、王国辉、陈丹丹、杨丽、刘龄龄、陈英、李贺、朱晓、肖鑫、李鑫等。由于作者水平有限，疏漏和不足之处在所难免，请广大读者朋友批评指正。
软件开发工作是相当复杂的，对于已经做完或者正在做着的开发工作，永远都有一种更好、更聪明或更快的方法来完成它。我们虽然提供了这些项目的开发思路、方法和完整开发过程，但希望读者不要拘泥于这些已提供的方法中，要不断演进并寻找更好的方法，学会享受挑战，并将之看做臻于精熟、成为高手的通道。
明日科技
2011年6月
目 录
第1篇  初级项目篇
第1章  会议记录管理系统 20
1.1  开发背景 21
1.2  需求分析 21
1.3  系统分析 21
1.3.1  系统目标 21
1.3.2  系统功能结构 22
1.3.3  系统预览 22
1.3.4  开发环境 24
1.3.5  文件夹组织结构 24
1.4  数据库设计 25
1.4.1  数据库分析 25
1.4.2  创建数据库和数据表 26
1.4.3  数据库连接文件 27
1.5  登录模块设计 28
1.5.1  登录模块概述 28
1.5.2  用户权限判断技术 28
1.5.3  用户登录实现过程 29
1.6  首页设计 30
1.6.1  首页概述 30
1.6.2  首页设计技术 31
1.6.3  首页实现过程 31
1.7  用户个人信息模块设计 34
1.7.1  用户个人信息模块概述 34
1.7.2  用户个人信息模块技术 34
1.7.3  用户个人信息实现过程 34
1.7.4  安全退出 35
1.8  会议记录添加模块 36
1.8.1  会议记录添加模块概述 36
1.8.2  会议记录信息验证技术 36
1.8.3  上传文件处理技术 37
1.8.4  会议记录添加的实现过程 39
1.9  浏览会议记录模块设计 41
1.9.1  浏览会议记录模块概述 41
1.9.2  WebBrowser打印技术 41
1.9.3  Excel报表生成技术分析 42
1.9.4  文本文件中数据的获取技术
分析 42
1.9.5  浏览会议记录实现过程 43
1.9.6  会议记录详细信息浏览实现
过程 44
1.10  查找会议记录模块设计 46
1.10.1  查找会议记录模块概述 46
1.10.2  分类查找技术 46
1.10.3  查找会议记录实现过程 47
1.11  ADODB连接数据库
技术专题 48
1.11.1  ADODB简介 48
1.11.2  ADODB的安装 49
1.11.3  ADODB常用函数及说明 49
1.11.4  不同数据库之间的转换 51
1.12  开发总结 51
第2章  留言本 52
2.1  开发背景 53
2.2  系统分析 53
2.2.1  程序业务流程 53
2.2.2  系统预览 53
2.2.3  文件夹组织结构 55
2.3  数据库设计 55
2.3.1  数据库概要说明 55
2.3.2  数据库概念设计 56
2.3.3  数据库逻辑设计 57
2.4  公共模块设计 58
2.4.1  数据库连接文件 58
2.4.2  将文本中的字符转换为HTML标识符 59
2.4.3  JavaScript脚本 60
2.5  首页模块设计 61
2.5.1  首页设计概述 61
2.5.2  switch和include语句 62
2.5.3  首页实现过程 64
2.6  用户注册模块设计 65
2.6.1  用户注册模块概述 65
2.6.2  JavaScript脚本验证表
单元素 65
2.6.3  用户注册模块实现过程 67
2.7  添加留言模块设计 68
2.7.1  添加留言模块概述 68
2.7.2  mysql_query()函数执行SQL
语句 69
2.7.3  添加留言模块实现过程 69
2.8  查看留言模块设计 70
2.8.1  查看留言模块概述 70
2.8.2  验证数据类型与取整 71
2.8.3  查看留言模块实现过程 71
2.9  编辑留言模块设计 74
2.9.1  编辑留言模块概述 74
2.9.2  JavaScript脚本控制弹出
对话框 74
2.9.3  编辑留言模块实现过程 75
2.10  查询留言模块设计 76
2.10.1  查询留言模块概述 76
2.10.2  通过mysql_fetch_array函数
返回结果集 76
2.10.3  查询留言模块实现过程 77
2.11  版主模块设计 77
2.11.1  版主模块概述 77
2.11.2  验证登录用户是否是版主 78
2.11.3  版主管理模块实现过程 79
2.12  开发技巧与难点分析 80
2.12.1  过滤敏感词 80
2.12.2  分页显示留言信息 81
2.13  开发总结 83
第3章  在线投票系统 84
3.1  系统设计思路 85
3.1.1  功能阐述 85
3.1.2  程序业务流程 85
3.1.3  系统预览 85
3.1.4  文件夹组织结构 86
3.2  数据库设计 87
3.2.1  数据库概要说明 87
3.2.2  数据库概念设计 87
3.2.3  数据库逻辑设计 89
3.3  投票模块设计 90
3.3.1  投票模块概述 90
3.3.2  创建数据库操作类 90
3.3.3  投票模块实现过程 91
3.4  分析投票结果模块设计 94
3.4.1  分析投票结果模块概述 94
3.4.2  Jpgraph类库技术 94
3.4.3  分析投票结果模块
实现过程 95
3.5  留言板模块设计 96
3.5.1  留言板模块概述 96
3.5.2  如何调用数据库操作类 97
3.5.3  留言板模块实现过程 97
3.6  主题搜索模块设计 98
3.6.1  主题搜索模块设计 98
3.6.2  模糊查询技术 99
3.6.3  主题搜索模块实现过程 100
3.7  Jpgraph类库技术专题 102
3.7.1  创建饼形图分析2011年
图书销量 102
3.7.2  创建折线图分析图书
销售走势 103
3.8  开发总结 104
第4章  个人网络日记 105
4.1  开发背景 106
4.2  系统设计 106
4.2.1  系统目标 106
4.2.2  系统功能结构 106
4.2.3  系统预览 107
4.2.4  文件夹组织结构 108
4.3  网络日记数据库设计 108
4.3.1  数据库概念设计 108
4.3.2  创建数据库及表 110
4.3.3  数据库逻辑结构设计 112
4.4  技术公关 114
4.4.1  PHP连接Access数据库 114
4.4.2  通过SESSION变量获取用户名来修改密码 114
4.4.3  通过密保方式找回密码 115
4.4.4  通过证件方式找回密码 115
4.5  网络日记模块设计 116
4.5.1  网络日记模块概述 116
4.5.2  日期、时间处理技术 116
4.5.3  FCK编辑器技术 118
4.5.4  网页闹钟功能实现过程 120
4.5.5  事物标题添加实现过程 120
4.5.6  日记记录功能实现过程 121
4.5.7  个人资料功能实现过程 123
4.5.8  修改密码功能实现过程 125
4.6  Access数据库专题 126
4.6.1  PHP与Access数据库的
连接 126
4.6.2  PHP连接带密码的Access
数据库 127
4.7  开发总结 128 
第2篇  中级项目篇
第5章  在线论坛 130
5.1  系统设计思路 131
5.1.1  功能阐述 131
5.1.2  程序业务流程 131
5.1.3  系统预览 132
5.1.4  文件夹组织结构 134
5.2  数据库设计 135
5.2.1  数据库概要说明 135
5.2.2  数据库概念设计 135
5.2.3  数据库逻辑设计 136
5.3  用户注册模块设计 137
5.3.1  用户注册模块概述 137
5.3.2  JavaScript脚本和include()包含语句 138
5.3.3  用户注册模块实现过程 140
5.4  用户登录模块设计 142
5.4.1  用户登录模块概述 142
5.4.2  通过JavaScript脚本判断用户名和密码是否为空 142
5.4.3  系统登录模块实现过程 143
5.5  帖子分类管理模块设计 144
5.5.1  帖子分类管理模块概述 144
5.5.2  使用SQL语句查询
数据技术 145
5.5.3  帖子分类管理模块
实现过程 146
5.6  发帖模块设计 148
5.6.1  发帖模块概述 148
5.6.2  while循环语句技术 149
5.6.3  发帖模块实现过程 149
5.7  回帖模块设计 151
5.7.1  回帖模块概述 151
5.7.2  mysql函数处理技术 152
5.7.3  回帖模块实现过程 152
5.8  后台管理模块设计 154
5.8.1  后台管理模块概述 154
5.8.2  URL编码和switch
框架技术 154
5.8.3  后台主页实现过程 155
5.8.4  栏目管理模块实现过程 157
5.9  加密技术专题 160
5.9.1  URL编码加密技术 160
5.9.2  base64编码加密技术 160
5.9.3  crypt()加密技术 161
5.9.4  md5()加密技术 161
5.10  开发总结 162
第6章  博客 163
6.1  开发背景 164
6.2  需求分析 164
6.3  系统设计 164
6.3.1  系统目标 164
6.3.2  系统功能结构 165
6.3.3  系统功能预览 166
6.3.4  文件夹组织结构 168
6.4  数据库设计 168
6.4.1  数据库概念设计 169
6.4.2  数据库物理结构设计 169
6.5  数据库操作类、配置文件及公共函数文件 173
6.5.1  数据库操作类 173
6.5.2  配置文件 176
6.5.3  公共函数 176
6.6  博客空间个人首页设计 177
6.6.1  首页模块概述 177
6.6.2  文件包含技术 178
6.6.3  首页模块实现过程 179
6.7  我的文章模块设计 181
6.7.1  我的文章模块概述 181
6.7.2  SQL语句查询技术 182
6.7.3  我的文章模块实现过程 183
6.7.4  文章浏览模块实现过程 184
6.8  文章管理模块设计 186
6.8.1  文章管理模块概述 186
6.8.2  会话处理技术 187
6.8.3  发表文章模块实现过程 188
6.8.4  文章列表模块实现过程 191
6.8.5  文章类别模块实现过程 194
6.9  用户管理模块设计 198
6.9.1  用户管理模块概述 198
6.9.2  冻结、解冻技术 198
6.9.3  用户管理模块实现过程 199
6.10  开发总结 203
第7章  物流管理系统 204
7.1  开发背景 205
7.2  系统分析 205
7.2.1  需求分析 205
7.2.2  可行性分析 205
7.3  系统设计 206
7.3.1  系统目标 206
7.3.2  系统功能结构 206
7.3.3  系统预览 207
7.3.4  文件夹组织结构 210
7.4  数据库设计 210
7.4.1  数据库分析 210
7.4.2  数据库概念设计 210
7.4.3  创建数据库及数据表 212
7.5  网站首页设计 214
7.5.1  网站首页概述 214
7.5.2  网站首页设计技术 215
7.5.3  网站首页的实现过程 216
7.6  车源信息查询模块设计 217
7.6.1  车源信息查询模块概述 217
7.6.2  模糊查询技术 217
7.6.3  车源信息查询模块的
实现过程 219
7.7  发货单管理模块设计 220
7.7.1  发货单管理模块概述 220
7.7.2  发货单编号生成技术 220
7.7.3  发货单填单的实现过程 223
7.7.4  发货单查询的实现过程 225
7.7.5  发货单打印的实现过程 227
7.8  回执单验收管理模块设计 228
7.8.1  回执单模块概述 228
7.8.2  MySQL函数库函数
应用技术 228
7.8.3  回执单验收模块的
实现过程 230
7.9  基础信息管理模块设计 232
7.9.1  基础信息管理模块概述 232
7.9.2  面向对象封装密码修改类 232
7.9.3  客户信息管理的实现过程 233
7.9.4  车源信息管理的实现过程 235
7.10  开发技巧与难点分析 238
7.10.1  应用存储过程实现管理员
登录 238
7.10.2  应用正则表达式验证
电话号码 240
7.11  报表打印技术专题 242
7.12  开发总结 244
第8章  在线考试管理系统 245
8.1  开发背景 246
8.2  系统分析 246
8.2.1  需求分析 246
8.2.2  可行性分析 246
8.3  系统设计 247
8.3.1  系统目标 247
8.3.2  系统功能结构 247
8.3.3  系统流程图 248
8.3.4  系统预览 249
8.3.5  文件夹组织结构 250
8.4  数据库设计 251
8.4.1  数据库分析 251
8.4.2  数据库概念设计 251
8.4.3  数据库物理结构 252
8.5  前台首页设计 254
8.5.1  前台首页概述 254
8.5.2  PHP连接MS SQL Server数据库技术 255
8.5.3  前台首页的实现过程 255
8.6  考生信息模块设计 256
8.6.1  考生信息模块概述 256
8.6.2  AJAX无刷新技术 257
8.6.3  考生注册的实现过程 259
8.7  在线考试模块设计 263
8.7.1  在线考试模块的概述 263
8.7.2  考试题的输出和答案的判断
技术 264
8.7.3  应用AJAX在线答题的实现
过程 265
8.7.4  分数统计和成绩保存的实现
过程 268
8.8  后台首页设计 269
8.8.1  后台首页概述 269
8.8.2  后台首页的设计技术 270
8.8.3  后台首页的实现过程 270
8.9  考题信息管理模块设计 271
8.9.1  考题信息管理模块的概述 271
8.9.2  动态输出考题类别技术 271
8.9.3  考题信息添加的实现过程 272
8.9.4  查询考题信息的实现过程 274
8.10  开发技巧与难点分析 278
8.10.1  考生登录编号的获取 278
8.10.2  通过AJAX技术实现计时与
显示剩余时间 278
8.11  AJAX无刷新技术专题 280
8.11.1  AJAX概述 280
8.11.2  AJAX的优点 281
8.11.3  AJAX的工作原理 281
8.11.4  AJAX的工作流程 282
8.11.5  AJAX中的核心技术XMLHttpRequest 283
8.12  开发总结 284
第9章  明日编程词典——
在线体验版 285
9.1  明日编程词典概述 286
9.2  开发背景 286
9.3  需求分析 286
9.4  系统设计 287
9.4.1  系统功能结构 287
9.4.2  系统功能预览 287
9.4.3  文件夹架构 289
9.5  数据库设计 290
9.5.1  创建数据库 290
9.5.2  创建数据表 291
9.5.3  分离、附加数据库 292
9.6  技术攻关 294
9.6.1  树状导航菜单设计 294
9.6.2  向Flash中传递参数 297
9.6.3  Smarty注册模板函数——读取文件 299
9.7  Smarty模板 300
9.8  PDO数据库抽象层 301
9.9  首页设计 303
9.9.1  首页概述 303
9.9.2  FRAME框架技术 303
9.9.3  首页的实现过程 304
9.10  网站模块导航设计 305
9.10.1  网站模块导航概述 305
9.10.2  超链接中图片切换技术 306
9.10.3  网站模块导航实现过程 306
9.11  内容树状导航设计 308
9.11.1  内容树状导航概述 308
9.11.2  Smarty模板技术 309
9.11.3  内容树状导航实现过程 311
9.12  内容展示区设计 315
9.12.1  内容展示区概述 315
9.12.2  文件检测技术 316
9.12.3  内容展示区实现过程 316
9.13  开发问题解析 316
9.14  开发总结 317
第10章  明日科技企业网站 318
10.1  开发背景 319
10.2  系统设计 319
10.2.1  系统目标 319
10.2.2  系统功能结构 319
10.2.3  系统预览 320
10.3  数据库设计 322
10.3.1  数据库概要说明 322
10.3.2  数据库概念设计 323
10.3.3  数据库逻辑设计 323
10.4  主页面设计 324
10.4.1  主页面概述 324
10.4.2  jQuery照片轮显技术 325
10.4.3  主页面实现过程 326
10.5  业界新闻页面设计 328
10.5.1  业界新闻页面概述 328
10.5.2  ThinkPHP框架的导包和
加载技术 329
10.5.3  业界新闻页面实现过程 329
10.6  图书开发页面设计 331
10.6.1  图书开发页面概述 331
10.6.2  图片平滑滚动技术 331
10.6.3  图书开发模块实现过程 331
10.7  后台登录模块 337
10.7.1  后台登录模块概述 337
10.7.2  管理员权限控制技术 337
10.7.3  后台登录模块实现过程 338
10.8  后台管理模块设计 339
10.8.1  后台管理模块概述 339
10.8.2  Framework框架技术 339
10.8.3  后台模块实现过程 340
10.9  ThinkPHP框架
技术专题（一） 345
10.9.1  基础概念 345
10.9.2  下载ThinkPHP框架 346
10.9.3  环境要求 346
10.9.4  使用ThinkPHP框架开发的
目录结构 346
10.9.5  自动生成目录 347
10.10  开发总结 348
第11章  明日软件导航系统 349
11.1  开发背景 350
11.2  系统设计 350
11.2.1  系统目标 350
11.2.2  系统功能结构 350
11.2.3  系统预览 351
11.3  数据库设计 352
11.3.1  数据库概念设计 353
11.3.2  数据库逻辑设计 354
11.4  主页面设计 355
11.4.1  主页面概述 355
11.4.2  按钮动态变色技术 356
11.4.3  主页面实现过程 357
11.5  软件下载设计 360
11.5.1  软件下载概述 360
11.5.2  软件下载技术 360
11.5.3  软件下载实现过程 361
11.6  后台登录模块 361
11.6.1  后台登录模块概述 361
11.6.2  后台登录模块技术 362
11.6.3  后台登录模块实现过程 363
11.7  后台管理模块设计 364
11.7.1  后台管理模块概述 364
11.7.2  动画效果技术 365
11.7.3  动画效果实现过程 366
11.7.4  无刷新技术分析 368
11.7.5  后台管理模块的实现过程 369
11.8  ThinkPHP框架
技术专题（二） 371
11.8.1  Model模型 372
11.8.2  配置文件conf.php 373
11.9  开发总结 374
第12章  播客 375
12.1  系统设计思路 376
12.1.1  功能阐述 376
12.1.2  程序业务流程 377
12.1.3  系统预览 378
12.1.4  文件夹组织结构 380
12.2  数据库设计 380
12.2.1  数据库概念设计 381
12.2.2  数据库逻辑设计 381
12.3  在线播放模块设计 383
12.3.1  在线播放模块概述 383
12.3.2  视频文件播放技术 384
12.3.3  在线播放模块实现过程 384
12.4  热播排行模块设计 386
12.4.1  热播排行模块概述 386
12.4.2  自定义数据查询技术 386
12.4.3  热播排行模块实现过程 387
12.5  站内订阅模块设计 389
12.5.1  站内订阅模块概述 389
12.5.2  RSS订阅文件生成技术 389
12.5.3  站内订阅模块实现过程 391
12.6  播客个人主页模块设计 392
12.6.1  播客个人主页模块概述 392
12.6.2  分页技术 393
12.6.3  播客个人主页模块实现过程 394
12.7  上传视频管理模块设计 399
12.7.1  上传视频管理模块概述 399
12.7.2  数据的删除、更新技术 399
12.7.3  上传视频管理模块
实现过程 399
12.8  开发技巧与难点分析 402
12.8.1  Smarty中的URL编码 402
12.8.2  PDO数据库抽象层的
应用 403
12.8.3  控制播放器窗口状态 405
12.8.4  AJAX无刷新评论 406
12.8.5  更多相关视频搜索 408
12.8.6  利用cookie技术实现
浏览记录 410
12.9  开发总结 411
第13章  在线音乐系统 412
13.1  开发背景 413
13.2  系统设计 413
13.2.1  系统目标 413
13.2.2  系统功能结构 413
13.2.3  系统预览 414
13.2.4  文件夹组织结构 415
13.3  数据库设计 415
13.3.1  数据库概要说明 415
13.3.2  数据库概念设计 416
13.3.3  数据库操作类与
配置文件 416
13.4  在线音乐前台设计 417
13.4.1  前台页面概述 417
13.4.2  音乐的在线播放技术 418
13.4.3  音乐的同步播放技术 419
13.4.4  无刷新删除.m3u格式
文件技术 423
13.4.5  应用PDO连接MySQL
数据库 424
13.4.6  上传音频文件功能的
实现 426
13.4.7  在线试听功能的实现 431
13.4.8  循环和连续播放
音乐功能的实现 432
13.4.9  播放列表功能的实现 437
13.4.10  音乐下载功能的实现 439
13.4.11  收藏和播放其他网站
音乐功能的实现 440
13.5  在线音乐后台管理设计 442
13.5.1  后台页面概述 442
13.5.2  管理员权限设置技术 443
13.5.3  权限分配的实现过程 443
13.6  开发技巧与难点分析 445
13.7  开发总结 446
第14章  电子邮件系统 447
14.1  电子邮件系统概述 448
14.1.1  电子邮件简介 448
14.1.2  电子邮件基本原理 448
14.2  系统分析 449
14.2.1  需求分析 449
14.2.2  可行性分析 449
14.3  系统设计 450
14.3.1  系统目标 450
14.3.2  系统预览 450
14.3.3  文件夹组织结构 452
14.4   技术公关 453
14.4.1  安装、配置WinWebMail邮件服务器 453
14.4.2  载入Zend框架 456
14.4.3  无刷新删除邮件地址 456
14.4.4  AJAX无刷新统计
邮件封数 457
14.5  邮件服务器登录模块设计 458
14.5.1  邮件服务器登录功能概述 458
14.5.2  通过POP3服务器
读取指定用户的邮件 459
14.5.3  邮件服务器登录功能实现 460
14.6  邮件发送模块设计 461
14.6.1  邮件发送功能概述 461
14.6.2  邮件发送技术 461
14.6.3  邮件群发技术 462
14.6.4  邮件中附件的发送技术 462
14.6.5  SMTP邮件发送功能
实现 462
14.6.6  网络版邮件发送功能
实现 465
14.7  邮件接收模块设计 466
14.7.1  邮件接收功能概述 466
14.7.2  邮件操作技术 467
14.7.3  统计邮件数量功能的实现 468
14.7.4  查看邮件功能的实现 469
14.7.5  删除邮件功能的实现 471
14.8  开发总结 472 
第3篇  高级项目篇
第15章  BCTY365网上社区 474
15.1  系统设计思路 475
15.1.1  系统功能结构 475
15.1.2  系统预览 476
15.1.3  文件夹组织结构 478
15.2  数据库设计 478
15.2.1  数据库概要说明 479
15.2.2  数据库概念设计 479
15.2.3  数据库逻辑设计 481
15.3  前台首页设计 483
15.3.1  前台首页概述 484
15.3.2  公告信息的滚动
输出技术 485
15.3.3  前台首页的实现过程 487
15.4  注册模块设计 488
15.4.1  注册模块概述 488
15.4.2  通过JavaScript脚本验证表
单元素 489
15.4.3  注册模块的实现过程 491
15.5  技术支持模块设计 492
15.5.1  技术支持模块概述 492
15.5.2  分页技术 493
15.5.3  常见问题的实现过程 494
15.5.4  客户反馈的实现过程 495
15.6  在线订购模块设计 496
15.6.1  在线订购模块概述 496
15.6.2  订单的预览及打印技术 497
15.6.3  购物车的实现过程 499
15.6.4  商品订单的实现过程 502
15.7  社区论坛模块设计 503
15.7.1  社区论坛模块概述 504
15.7.2  页面跳转技术 504
15.7.3  论坛分类的实现过程 505
15.7.4  论坛帖子浏览的
实现过程 507
15.7.5  论坛帖子发布的
实现过程 510
15.7.6  论坛帖子回复的
实现过程 513
15.8  后台首页设计 514
15.8.1  后台首页概述 514
15.8.2  switch框架技术 515
15.8.3  后台首页的实现过程 516
15.9  编程词典管理模块设计 517
15.9.1  编程词典管理模块概述 518
15.9.2  图片上传技术 518
15.9.3  添加编程词典的
实现过程 519
15.9.4  编辑编程词典的
实现过程 521
15.10  软件升级管理模块设计 523
15.10.1  软件升级管理模块概述 523
15.10.2  动态输出
下拉列表框的值 523
15.10.3  软件升级包上传的
实现过程 525
15.10.4  软件升级包删除的
实现过程 526
15.11  开发技巧与难点分析 527
15.11.1  管理员权限的设置 527
15.11.2  帖子置顶的设置 528
15.12  在线支付技术专题 529
15.13  开发总结 533
第16章  易查供求信息网 534
16.1  开发背景 535
16.2  系统分析 535
16.2.1  需求分析 535
16.2.2  可行性分析 535
16.3  系统设计 536
16.3.1  系统目标 536
16.3.2  系统功能结构 537
16.3.3  系统预览 538
16.3.4  文件夹组织结构 541
16.4  数据库设计 541
16.4.1  数据库分析 541
16.4.2  数据库概念设计 541
16.4.3  创建数据库及数据表 543
16.5  前台首页设计 545
16.5.1  前台首页概述 545
16.5.2  超级链接技术 546
16.5.3  前台首页的实现过程 548
16.6  免费供求信息发布
模块设计 549
16.6.1  免费供求信息发布
模块概述 549
16.6.2  MySQL数据库连接技术 550
16.6.3  免费供求信息发布模块的
实现过程 552
16.7  信息检索模块设计 554
16.7.1  信息检索模块概述 554
16.7.2  模糊查询技术 555
16.7.3  信息检索模块的
实现过程 556
16.8  后台首页设计 560
16.8.1  后台首页概述 560
16.8.2  Frame框架技术 560
16.8.3  后台首页的实现过程 563
16.9  付费供求信息发布
模块设计 564
16.9.1  付费供求信息发布
模块概述 564
16.9.2  计算供求信息的
有效时间 565
16.9.3  付费供求信息发布模块的
实现过程 565
16.10  付费信息管理模块设计 567
16.10.1  付费信息管理模块概述 567
16.10.2  数据的更新和删除技术 568
16.10.3  付费信息显示的
实现过程 569
16.10.4  付费信息审核的
实现过程 572
16.10.5  付费信息删除的
实现过程 573
16.10.6  单元测试 573
16.11  开发技巧与难点分析 575
16.11.1  查询关键字描红功能 575
16.11.2  表单数据的提交方式 576
16.12  开发总结 578
第17章  图书馆管理系统 579
17.1  开发背景 580
17.2  需求分析 580
17.3  系统设计 580
17.3.1  系统目标 580
17.3.2  系统功能结构 581
17.3.3  系统流程图 581
17.3.4  系统预览 582
17.3.5  文件夹组织结构 583
17.4  数据库设计 584
17.4.1  数据库分析 584
17.4.2  数据库概念设计 584
17.4.3  创建数据库及数据表 586
17.5  首页设计 587
17.5.1  首页概述 587
17.5.2  权限设置技术 588
17.5.3  首页的实现过程 589
17.6  管理员模块设计 590
17.6.1  管理员模块概述 590
17.6.2  控制文件的访问权限 590
17.6.3  系统登录的实现过程 591
17.6.4  查看管理员的实现过程 593
17.6.5  添加管理员的实现过程 594
17.6.6  设置管理员权限的
实现过程 596
17.6.7  删除管理员的实现过程 597
17.7  图书档案管理模块设计 598
17.7.1  图书档案管理模块概述 598
17.7.2  图书档案管理中的
多表查询技术 598
17.7.3  查看图书信息列表的
实现过程 599
17.7.4  添加图书信息的
实现过程 600
17.7.5  修改图书信息的
实现过程 602
17.7.6  删除图书信息的
实现过程 604
17.8  图书借还模块设计 604
17.8.1  图书借还模块概述 604
17.8.2  图书借还模块中的
多表查询技术 605
17.8.3  图书借阅的实现过程 605
17.8.4  图书续借的实现过程 608
17.8.5  图书归还的实现过程 610
17.8.6  图书借阅查询的
实现过程 612
17.9  开发技巧与难点分析 614
17.9.1  如何自动计算图书
归还日期 614
17.9.2  如何对图书借阅信息进行
统计排行 615
17.10  连接语句技术专题 615
17.10.1  内连接语句 616
17.10.2  外连接语句 616
17.11  开发总结 617
第18章  办公自动化管理系统 618
18.1  开发背景 619
18.2  需求分析 619
18.3  系统设计 619
18.3.1  系统目标 619
18.3.2  系统功能结构 620
18.3.3  系统预览 621
18.3.4  系统流程图 623
18.3.5  文件夹组织结构 624
18.4  数据库设计 624
18.4.1  数据库概念设计 624
18.4.2  数据库物理结构设计 625
18.5  公共模块设计 626
18.5.1  数据库连接、操作类的
封装 626
18.5.2  Smarty类库的封装 628
18.5.3  类的实例化 628
18.5.4  JavaScript脚本 629
18.5.5  自定义函数 629
18.6  前台首页设计 630
18.6.1  前台首页概述 630
18.6.2  前台首页框架技术 631
18.6.3  前台首页的实现过程 633
18.7  人事消息模块设计 633
18.7.1  人事消息模块概述 633
18.7.2  $_GET[]和$_POST[]
全局数组 634
18.7.3  消息管理的实现过程 635
18.8  考勤管理模块设计 639
18.8.1  考勤管理模块概述 639
18.8.2  Smarty模板中的if语句
嵌套技术 640
18.8.3  上下班登记的实现过程 641
18.8.4  设置时间的实现过程 646
18.9  后台主页设计 647
18.9.1  后台主页概述 648
18.9.2  后台主页框架技术 648
18.9.3  后台主页的实现过程 649
18.10  部门管理模块设计 650
18.10.1  部门管理模块概述 650
18.10.2  部门功能结构的动态
输出技术 651
18.10.3  部门查看的实现过程 653
18.10.4  部门添加的实现过程 657
18.11  系统管理模块设计 658
18.11.1  系统管理模块概述 658
18.11.2  通过文件存储数据技术 658
18.11.3  系统日志的实现过程 660
18.12  开发技巧与难点分析 661
18.12.1  使用JavaScript关联
多选列表框 661
18.12.2  用户组设置 663
18.13  开发总结 664
第19章  电子商务网站 665
19.1  开发背景 666
19.2  需求分析 666
19.3  系统分析 666
19.3.1  系统目标 666
19.3.2  系统功能结构 667
19.3.3  系统预览 668
19.3.4  文件夹组织结构 670
19.4  数据库设计 670
19.4.1  数据库分析 671
19.4.2  创建数据库和数据表 672
19.5  公共文件设计 674
19.5.1  数据库连接、管理和
分页类文件 674
19.5.2  Smarty模板配置类文件 676
19.5.3  执行类的实例化文件 677
19.6  前台首页设计 677
19.6.1  前台首页概述 677
19.6.2  Smarty模板页中的
框架技术 678
19.6.3  前台首页实现过程 678
19.7  登录模块设计 680
19.7.1  登录模块概述 680
19.7.2  AJAX无刷新验证技术 681
19.7.3  用户注册 683
19.7.4  用户登录 684
19.7.5  找回密码 687
19.8  会员信息模块设计 691
19.8.1  会员信息模块概述 691
19.8.2  会员信息查询技术 692
19.8.3  会员中心 693
19.8.4  安全退出 695
19.9  商品展示模块设计 695
19.9.1  商品展示模块概述 695
19.9.2  分页技术 696
19.9.3  商品展示模块的实现过程 697
19.10  购物车模块设计 698
19.10.1  购物车模块概述 698
19.10.2  购物车中商品添加技术 699
19.10.3  购物车展示 701
19.10.4  更改商品数量 703
19.10.5  删除商品 703
19.10.6  保存购物车 706
19.11  收银台模块设计 708
19.11.1  收银台模块概述 708
19.11.2  PDO操作MySQL
数据库技术 708
19.11.3  显示订单 708
19.11.4  填写订单 709
19.11.5  处理订单 710
19.12  后台首页设计 711
19.12.1  后台首页概述 711
19.12.2  后台网页布局技术 712
19.12.3  后台首页实现过程 714
19.13  开发技巧与难点分析 716
19.13.1  解决AJAX的乱码问题 716
19.13.2  使用JS脚本获取、
输出标签内容 716
19.13.3  在新窗口中使用SESSION 716
19.13.4  判断上传文件格式 717
19.14  开发总结 717
第20章  明日知道网站 718
20.1  开发背景 719
20.2  需求分析 719
20.3  功能结构 719
20.4  系统预览 720
20.5  数据库设计 722
20.5.1  数据库分析 722
20.5.2  数据库概念设计 722
20.5.3  创建数据库及数据表 724
20.6  技术攻关 726
20.6.1  类似于Google搜索引擎的
搜索条 726
20.6.2  使用空格分隔多关键字 731
20.6.3  关键字描红 734
20.6.4  制作在线编辑器 736
20.7  MVC框架结构搭建 740
20.7.1  MVC开发模式介绍 740
20.7.2  Zend Framework框架的
MVC目录结构 740
20.7.3  Zend Framework框架的MVC结构创建过程 741
20.8  首页设计 744
20.8.1  首页概述 744
20.8.2  语言选项卡技术 744
20.8.3  首页的实现过程 745
20.9  用户模块设计 748
20.9.1  用户模块概述 748
20.9.2  验证码技术 749
20.9.3  用户注册的实现过程 751
20.9.4  用户登录的实现过程 753
20.10  发表问题模块设计 756
20.10.1  发表问题模块概述 756
20.10.2  文件上传技术 757
20.10.3  发表问题模块实现过程 758
20.11  回复问题模块设计 760
20.11.1  回复问题模块概述 760
20.11.2  问题引用技术 761
20.11.3  回复问题模块实现过程 761
20.12  开发技巧与难点分析 763
20.12.1  项目开发过程中
常见错误及解决方法 763
20.12.2  自定义错误页面 764
20.13  开发总结 765
第21章  新闻发布系统 766
21.1  新闻发布系统概述 767
21.2  开发背景 767
21.3  需求分析 767
21.3.1  功能分析 767
21.3.2  运行环境 768
21.4  功能结构 768
21.5  系统预览 769
21.6  数据库设计 772
21.6.1  数据库概念设计 772
21.6.2  创建数据库及数据表 773
21.7  MVC框架结构搭建 775
21.7.1  MVC开发模式介绍 775
21.7.2  Zend Framework框架的
MVC目录结构 775
21.7.3  Zend Framework框架的
MVC结构创建过程 776
21.8  技术攻关 779
21.8.1  站内搜索——使用空格
分隔多关键字 779
21.8.2  关键字描红 784
21.8.3  隐藏PHP文件后缀——
伪静态技术 785
21.9  前台首页设计 787
21.9.1  前台首页概述 787
21.9.2  jQuery实现广告
轮换特性 787
21.9.3  前台首页的实现过程 789
21.10  后台管理模块设计 792
21.10.1  后台管理模块概述 792
21.10.2  Zend Framework框架中的
文件上传技术 793
21.10.3  管理员登录实现过程 794
21.10.4  新闻管理模块实现过程 796
21.10.5  用户管理模块实现过程 797
21.11  程序调试与错误处理
技术专题 797
21.11.1  语法错误 797
21.11.2  语义错误 800
21.11.3  注释错误 801
21.11.4  运行错误 801
21.11.5  逻辑错误 803
21.11.6  错误提示页面 803
21.12  开发总结 804