第1部分 基础知识
第1章 初识PHP3
视频讲解:7分钟
1.1 PHP概述4
1.1.1 PHP是什么4
1.1.2 PHP 5的新特性4
1.1.3 PHP的语言优势4
1.1.4 PHP语言的发展5
1.2 PHP与其他语言的比较6
1.3 PHP语言相关术语7
1.4 资深程序员谈如何学习PHP8
1.5 常用代码编辑工具10
1.6 学习资源12
1.6.1 PHP参考手册12
1.6.2 PHP学习讨论12
1.7 成功案例13
1.8 本章小结14
第2章 PHP环境搭建15
视频讲解:80分钟
2.1 搭建PHP开发环境的准备工作16
2.1.1 在Windows下搭建PHP开发环境的
准备工作16
2.1.2 在Linux下搭建PHP开发环境的
准备工作16
2.2 Apache服务器的安装和配置16
2.2.1 在Windows下安装Apache服务器16
2.2.2 在Linux下安装Apache服务器19
2.3 PHP的安装和配置20
2.3.1 在Windows下安装PHP20
2.3.2 在Linux下安装PHP21
2.4 MySQL服务器的安装和配置23
2.4.1 在Windows下安装MySQL服务器23
2.4.2 在Linux下安装MySQL服务器26
2.5 初学者——应用组合包快速搭建
PHP环境27
2.6 第一个PHP程序29
2.6.1 使用Macromedia Dreamweaver 8
编写源程序29
2.6.2 发布和运行PHP程序31
2.7 环境安装常见问题31
2.7.1 Apache安装常见问题31
2.7.2 PHP安装常见问题32
2.7.3 MySQL安装常见问题33
2.8 实战33
2.9 本章小结35
2.10 实战练习36
第3章 PHP语言基础37
视频讲解:125分钟
3.1 学习语言基础的重要性38
3.2 PHP语法基础38
3.2.1 PHP标记符38
3.2.2 PHP的注释39
3.3 PHP的数据类型40
3.3.1 整型40
3.3.2 布尔型41
3.3.3 浮点型41
3.3.4 字符串型42
3.3.5 null类型44
3.3.6 数据类型的转换45
3.4 PHP常量46
3.4.1 声明和使用常量46
3.4.2 预定义常量48
3.5 PHP变量49
3.5.1 变量声明及使用49
3.5.2 变量作用域51
3.5.3 可变变量53
3.5.4 预定义变量53
3.5.5 变量的生存周期54
3.6 PHP运算符54
3.6.1 字符串运算符54
3.6.2 算术运算符55
3.6.3 赋值运算符56
3.6.4 递增递减运算符57
3.6.5 位运算符58
3.6.6 逻辑运算符59
3.6.7 比较运算符60
3.6.8 条件运算符61
3.6.9 运算符的使用规则61
3.7 PHP的表达式62
3.8 实战63
3.9 本章小结64
3.10 实战练习64
第1部分 基础知识
第1章 初识PHP3
视频讲解:7分钟
1.1 PHP概述4
1.1.1 PHP是什么4
1.1.2 PHP 5的新特性4
1.1.3 PHP的语言优势4
1.1.4 PHP语言的发展5
1.2 PHP与其他语言的比较6
1.3 PHP语言相关术语7
1.4 资深程序员谈如何学习PHP8
1.5 常用代码编辑工具10
1.6 学习资源12
1.6.1 PHP参考手册12
1.6.2 PHP学习讨论12
1.7 成功案例13
1.8 本章小结14
第2章 PHP环境搭建15
视频讲解:80分钟
2.1 搭建PHP开发环境的准备工作16
2.1.1 在Windows下搭建PHP开发环境的
准备工作16
2.1.2 在Linux下搭建PHP开发环境的
准备工作16
2.2 Apache服务器的安装和配置16
2.2.1 在Windows下安装Apache服务器16
2.2.2 在Linux下安装Apache服务器19
2.3 PHP的安装和配置20
2.3.1 在Windows下安装PHP20
2.3.2 在Linux下安装PHP21
2.4 MySQL服务器的安装和配置23
2.4.1 在Windows下安装MySQL服务器23
2.4.2 在Linux下安装MySQL服务器26
2.5 初学者——应用组合包快速搭建
PHP环境27
2.6 第一个PHP程序29
2.6.1 使用Macromedia Dreamweaver 8
编写源程序29
2.6.2 发布和运行PHP程序31
2.7 环境安装常见问题31
2.7.1 Apache安装常见问题31
2.7.2 PHP安装常见问题32
2.7.3 MySQL安装常见问题33
2.8 实战33
2.9 本章小结35
2.10 实战练习36
第3章 PHP语言基础37
视频讲解:125分钟
3.1 学习语言基础的重要性38
3.2 PHP语法基础38
3.2.1 PHP标记符38
3.2.2 PHP的注释39
3.3 PHP的数据类型40
3.3.1 整型40
3.3.2 布尔型41
3.3.3 浮点型41
3.3.4 字符串型42
3.3.5 null类型44
3.3.6 数据类型的转换45
3.4 PHP常量46
3.4.1 声明和使用常量46
3.4.2 预定义常量48
3.5 PHP变量49
3.5.1 变量声明及使用49
3.5.2 变量作用域51
3.5.3 可变变量53
3.5.4 预定义变量53
3.5.5 变量的生存周期54
3.6 PHP运算符54
3.6.1 字符串运算符54
3.6.2 算术运算符55
3.6.3 赋值运算符56
3.6.4 递增递减运算符57
3.6.5 位运算符58
3.6.6 逻辑运算符59
3.6.7 比较运算符60
3.6.8 条件运算符61
3.6.9 运算符的使用规则61
3.7 PHP的表达式62
3.8 实战63
3.9 本章小结64
3.10 实战练习64
第4章 流程控制语句65
视频讲解:80分钟
4.1 学前导读66
4.1.1 什么是算法66
4.1.2 算法的描述方法66
4.1.3 程序的3种控制结构67
4.2 条件控制语句69
4.2.1 if条件语句69
4.2.2 switch…case分支控制语句72
4.3 循环控制语句74
4.3.1 while循环语句74
4.3.2 do…while循环语句75
4.3.3 for循环语句76
4.3.4 foreach循环78
4.4 跳转控制语句79
4.4.1 使用break语句跳出循环79
4.4.2 使用continue语句跳出循环81
4.5 实战82
4.5.1 过滤留言信息中的敏感词82
4.5.2 图书信息显示85
4.5.3 应用switch语句设计网站主页86
4.6 本章小结88
4.7 实战练习88
第5章 函数89
视频讲解:75分钟
5.1 自定义函数90
5.1.1 函数的命名规则90
5.1.2 自定义函数格式90
5.1.3 调用自定义函数91
5.1.4 函数的参数91
5.1.5 函数返回值93
5.1.6 嵌套调用93
5.1.7 递归调用94
5.2 内建函数94
5.3 输出语句95
5.3.1 应用print语句输出字符95
5.3.2 应用echo语句输出字符96
5.3.3 应用printf语句格式化输出字符98
5.3.4 应用sprintf语句格式化输出字符99
5.4 引用文件100
5.4.1 应用include语句引用文件100
5.4.2 应用require语句引用文件101
5.4.3 应用include_once语句引用文件102
5.4.4 应用require_once语句引用文件102
5.4.5 include语句和require语句的使用区别104
5.4.6 include_once语句和require_once语句的
使用区别104
5.5 实战104
5.5.1 通过自定义函数防止新闻主题信息
出现中文乱码104
5.5.2 应用include语句构建在线音乐网站主页106
5.6 本章小结108
5.7 实战练习108
第6章 字符串109
视频讲解:76分钟
6.1 字符串简介110
6.2 单引号与双引号110
6.3 定界符111
6.4 连接字符串113
6.5 转义、还原字符串114
6.5.1 手动转义、还原字符串114
6.5.2 自动转义、还原字符串114
6.6 获取字符串长度116
6.7 截取字符串118
6.8 比较字符串119
6.8.1 按字节比较119
6.8.2 按自然排序法比较120
6.8.3 指定从源字符串的位置比较121
6.9 检索字符串121
6.9.1 应用strstr()函数检索指定的关键字121
6.9.2 应用substr_count()函数检索子串
出现的次数122
6.10 替换子字符串124
6.11 去除字符串中空白字符和特殊字符128
6.11.1 去除字符串左端空白字符和特殊字符128
6.11.2 去除字符串右端空白字符和特殊字符129
6.11.3 去除字符串两端空白字符和特殊字符129
6.12 格式化字符串130
6.13 分割字符串131
6.14 字符串与HTML相互转换132
6.15 实战134
6.15.1 超长文本的分页显示134
6.15.2 控制页面中输出字符串的长度136
6.16 本章小结137
6.17 实战练习138
第7章 正则表达式139
视频讲解:82分钟
7.1 正则表达式是什么140
7.2 正则表达式常用术语140
7.3 正则表达式语法规则140
7.3.1 行定位符(^和$)141
7.3.2 字符类([])141
7.3.3 选择字符(|)142
7.3.4 连字符(-)142
7.3.5 排除字符([^])142
7.3.6 限定符(? * + {n,m})142
7.3.7 点字符(.)143
7.3.8 转义字符(\)143
7.3.9 反斜线(\)144
7.3.10 括号字符(())145
7.3.11 反向引用145
7.4 POSIX扩展正则表达式函数146
7.4.1 查找字符串146
7.4.2 替换字符串146
7.4.3 分割字符串147
7.5 PCRE兼容正则表达式函数147
7.5.1 查找字符串147
7.5.2 替换字符串148
7.6 实战149
7.7 本章小结152
7.8 实战练习152
第8章 PHP数组153
视频讲解:90分钟
8.1 数组是什么154
8.2 声明数组154
8.2.1 数组命名规则155
8.2.2 通过PHP函数创建数组155
8.2.3 通过数组标识符“[]”创建数组156
8.3 数组的类型157
8.3.1 数字索引数组157
8.3.2 关联数组157
8.4 输出数组158
8.5 数组的构造159
8.5.1 创建一维数组159
8.5.2 创建二维数组159
8.6 遍历数组160
8.6.1 foreach结构遍历数组160
8.6.2 each()函数遍历数组161
8.6.3 list()函数遍历数组161
8.6.4 for语句遍历数组163
8.7 合并数组163
8.8 字符串与数组的转换164
8.8.1 应用explode()函数将字符串转换成数组164
8.8.2 应用implode()函数将数组转换成一个
新字符串165
8.9 统计数组元素个数165
8.10 数组排序166
8.10.1 数字数组排序166
8.10.2 关联数组排序168
8.11 实战169
8.12 本章小结170
8.13 实战练习170
第9章 PHP与Web页面交互171
视频讲解:124分钟
9.1 表单172
9.1.1 创建表单172
9.1.2 认识表单元素173
9.2 在Web页中创建表单175
9.3 在Web页中嵌入PHP脚本177
9.3.1 在HTML标记中嵌入PHP脚本177
9.3.2 为表单元素赋值178
9.4 提交表单数据178
9.4.1 POST方法提交表单数据179
9.4.2 GET方法提交表单数据179
9.4.3 POST方法与GET方法的使用区别180
9.5 PHP全局变量181
9.5.1 $_POST[]全局变量181
9.5.2 $_GET[]全局变量182
9.5.3 $_SEESION[]全局变量183
9.6 对URL传递的参数进行编/解码183
9.6.1 对URL传递的参数进行编码183
9.6.2 对URL编码的字符串进行解码184
9.7 实战185
9.7.1 发布和查看公告信息185
9.7.2 图书借阅187
9.8 本章小结188
9.9 实战练习188
第10章 PHP与JavaScript交互189
视频讲解:81分钟
10.1 了解JavaScript190
10.1.1 JavaScript是什么190
10.1.2 JavaScript能做什么190
10.2 JavaScript语言基础190
10.2.1 JavaScript数据类型190
10.2.2 JavaScript变量191
10.2.3 JavaScript注释192
10.3 自定义函数193
10.4 JavaScript脚本嵌入方式194
10.4.1 在HTML中嵌入JavaScript脚本194
10.4.2 应用JavaScript事件调用自定义函数195
10.4.3 在PHP动态网页中引用JS文件196
10.4.4 解决浏览器不支持JavaScript问题197
10.5 实战200
10.5.1 应用JavaScript脚本制作树状
导航菜单200
10.5.2 PHP与JavaScript脚本的交互应用201
10.6 本章小结206
10.7 实战练习206
第11章 日期和时间207
视频讲解:93分钟
11.1 系统时区设置208
11.1.1 时区的划分208
11.1.2 PHP中的时区设置208
11.2 UNIX时间戳209
11.2.1 什么是时间戳209
11.2.2 UNIX时间戳209
11.2.3 获取指定日期的时间戳210
11.2.4 获取当前时间戳211
11.2.5 将英文文本的日期时间描述解析为
UNIX时间戳211
11.3 PHP日期和时间的处理212
11.3.1 格式化日期和时间212
11.3.2 获取日期和时间信息214
11.3.3 获取本地化的日期和时间215
11.3.4 检验日期和时间的有效性217
11.4 实战218
11.4.1 实现倒计时的功能218
11.4.2 实现生日提示功能219
11.4.3 计算在线考试用时和剩余时间222
11.5 本章小结225
11.6 实战练习226
第2部分 核心技术
第12章 会话管理229
视频讲解:117分钟
12.1 Cookie管理230
12.1.1 了解Cookie230
12.1.2 创建Cookie231
12.1.3 读取Cookie232
12.1.4 删除Cookie233
12.1.5 Cookie应用的注意事项234
12.1.6 Cookie的综合应用——自动登录235
12.2 Session管理237
12.2.1 了解Session237
12.2.2 启动Session238
12.2.3 应用Session239
12.2.4 删除Session240
12.2.5 Session的综合应用——通过Session
控制页面访问权限240
12.3 Cookie与Session的比较242
12.4 实战242
12.4.1 通过Cookie实现单点登录242
12.4.2 Session购物车245
12.5 本章小结250
12.6 实战练习250
第13章 图形图像251
视频讲解:106分钟
13.1 了解GD2函数库252
13.2 参数设置252
13.3 Jpgraph类库253
13.3.1 Jpgraph类库简介253
13.3.2 Jpgraph的安装253
13.3.3 Jpgraph的配置253
13.4 常用图像处理254
13.4.1 创建画布254
13.4.2 颜色处理255
13.4.3 输出图像256
13.4.4 绘制基本图形257
13.4.5 填充几何图形258
13.4.6 输出文字259
13.5 实战260
13.5.1 创建一个简单的图像260
13.5.2 应用GD2函数在照片上添加文字261
13.5.3 应用图像处理技术生成验证码262
13.5.4 Jpgraph创建柱状图展示年度收支情况264
13.5.5 Jpgraph创建折线图统计图书销售走势265
13.5.6 Jpgraph创建3D饼形图展示部门
业绩比较267
13.6 本章小结268
13.7 实战练习268
第14章 文件系统269
视频讲解:74分钟
14.1 文件处理270
14.1.1 打开文件270
14.1.2 读取文件271
14.1.3 写入文件274
14.1.4 操作文件275
14.1.5 关闭文件276
14.2 文件上传276
14.2.1 配置php.ini文件277
14.2.2 预定义变量$_FILES277
14.2.3 文件上传函数278
14.3 文件处理的高级应用279
14.3.1 远程文件的访问279
14.3.2 文件指针280
14.3.3 锁定文件282
14.4 目录处理282
14.4.1 打开目录283
14.4.2 浏览目录283
14.4.3 操作目录284
14.4.4 关闭目录284
14.5 实战285
14.5.1 多图片上传285
14.5.2 通过文本文件统计页面访问量286
14.6 本章小结288
14.7 实战练习288
第15章 面向对象289
视频讲解:160分钟
15.1 面向对象的基本概念290
15.1.1 类290
15.1.2 对象290
15.1.3 面向对象编程的三大特点290
15.2 类与对象291
15.2.1 定义类291
15.2.2 实例化类292
15.2.3 使用对象292
15.2.4 成员变量293
15.2.5 成员函数294
15.3 类的权限修饰符295
15.3.1 public(公有成员)295
15.3.2 private(私有成员)296
15.3.3 protected(保护成员)297
15.4 构造函数297
15.4.1 创建构造函数298
15.4.2 调用父类构造函数299
15.5 析构函数299
15.6 使用$this变量访问方法和属性300
15.7 static关键字301
15.8 final关键字302
15.9 抽象类303
15.10 接口的使用305
15.11 实战306
15.11.1 面向对象的用户登录身份验证306
15.11.2 面向对象的数据分页显示308
15.12 本章小结310
15.13 实战练习310
第16章 PHP加密技术311
视频讲解:8分钟
16.1 加密技术简介312
16.1.1 MD5算法312
16.1.2 SHA1算法313
16.1.3 DES算法313
16.1.4 MIME/BASE64的算法314
16.2 PHP内置加密函数314
16.2.1 使用crypt()函数进行加密314
16.2.2 使用md5()函数进行加密316
16.2.3 使用sha1()函数进行加密316
16.2.4 使用base64_encode()函数进行编码317
16.2.5 使用base64_decode()函数进行解码317
16.3 PHP加密扩展库317
16.3.1 Mcrypt扩展库318
16.3.2 Mhash扩展库320
16.4 实战321
16.5 本章小结322
16.6 实战练习322
第17章 MySQL数据库基本操作323
视频讲解:70分钟
17.1 MySQL简介324
17.1.1 MySQL是什么324
17.1.2 MySQL特点324
17.1.3 MySQL 5支持的特性325
17.2 启动、连接、断开和停止MySQL
服务器325
17.2.1 启动MySQL服务器325
17.2.2 连接和断开MySQL服务器326
17.2.3 停止MySQL服务器327
17.3 使用MySQL命令行操作数据库328
17.3.1 创建数据库328
17.3.2 查看数据库329
17.3.3 选择数据库329
17.3.4 删除数据库329
17.4 使用MySQL命令行操作数据表330
17.4.1 创建数据表330
17.4.2 查看表结构331
17.4.3 修改表结构332
17.4.4 重命名表333
17.4.5 删除表334
17.5 MySQL语句操作334
17.5.1 插入记录334
17.5.2 浏览数据库记录335
17.5.3 修改记录336
17.5.4 删除记录336
17.6 实战337
17.7 本章小结338
17.8 实战练习338
第18章 phpMyAdmin图形化管理工具339
视频讲解:57分钟
18.1 phpMyAdmin简介340
18.2 phpMyAdmin的安装和配置340
18.2.1 Windows系统下phpMyAdmin
的安装配置340
18.2.2 Linux系统下phpMyAdmin的安装配置341
18.3 phpMyAdmin的使用342
18.3.1 管理数据库342
18.3.2 管理数据表344
18.3.3 管理数据记录346
18.3.4 导入导出数据349
18.4 实战350
18.5 本章小结351
18.6 实战练习352
第19章 使用MySQL函数操作数据库353
视频讲解:182分钟
19.1 PHP访问MySQL数据库的
一般步骤354
19.2 使用MySQL函数库355
19.2.1 连接MySQL服务器355
19.2.2 选择数据库356
19.2.3 执行SQL语句357
19.2.4 应用mysql_fetch_array()函数从数组
结果集中获取信息358
19.2.5 应用mysql_fetch_object()函数从结果
集中获取一行作为对象360
19.2.6 应用mysql_fetch_row()函数逐行获取
结果集中的每条记录361
19.2.7 应用mysql_num_rows()函数获取查询
结果集中的记录数363
19.2.8 关闭连接364
19.3 PHP操作MySQL数据库365
19.3.1 应用insert命令动态添加公告信息365
19.3.2 应用select命令查询公告信息368
19.3.3 解决截取公告主题乱码问题369
19.3.4 分页显示公告信息371
19.3.5 应用update命令动态编辑公告信息374
19.3.6 应用delete命令动态删除公告信息376
19.4 实战377
19.4.1 输入页码跳转到指定页377
19.4.2 图片的分栏分页显示379
19.4.3 留言板383
19.5 本章小结386
19.6 实战练习386
第20章 ADODB类库387
视频讲解:96分钟
20.1 ADODB类库是什么388
20.2 ADODB支持的数据库388
20.3 ADODB下载与安装389
20.4 ADODB类库390
20.4.1 连接数据库函数390
20.4.2 操作数据库函数392
20.4.3 控制结果集存取方式函数396
20.4.4 操作结果集函数397
20.4.5 处理事务函数400
20.4.6 生成HTML表格函数400
20.4.7 生成下拉列表框函数401
20.4.8 实现分页功能函数402
20.4.9 错误处理函数403
20.5 实战404
20.5.1 实现分页404
20.5.2 处理事务405
20.5.3 缓存函数+ADODB动态生成静态页406
20.6 本章小结412
20.7 实战练习412
第21章 程序调试与异常处理413
视频讲解:70分钟
21.1 程序基本调试流程414
21.2 PHP中的错误类型414
21.2.1 语法错误415
21.2.2 语义错误417
21.2.3 逻辑错误417
21.2.4 注释错误418
21.2.5 运行错误418
21.3 PHP错误的调试418
21.3.1 PHP的错误报告418
21.3.2 启动错误报告419
21.3.3 使用print语句调试程序419
21.3.4 应用@前缀字符屏蔽PHP脚本错误提示420
21.3.5 使用错误处理器记录日志421
21.4 SQL错误的调试422
21.4.1 PHP与MySQL连接错误422
21.4.2 SQL语句错误423
21.5 实战425
21.6 本章小结427
21.7 实战练习428
第3部分 高级应用
第22章 XML技术431
视频讲解:79分钟
22.1 XML概述432
22.2 XML语法432
22.2.1 XML文档结构432
22.2.2 XML声明433
22.2.3 XML处理指令433
22.2.4 XML注释433
22.2.5 XML元素434
22.2.6 XML属性436
22.3 创建XML文档436
22.4 SimpleXML437
22.4.1 创建SimpleXML对象438
22.4.2 遍历所有子元素439
22.4.3 遍历所有属性439
22.4.4 访问特定节点元素和属性440
22.4.5 修改XML数据441
22.4.6 保存XML文档442
22.5 实战443
22.5.1 动态创建XML文档443
22.5.2 动态读取XML文档446
22.5.3 通过XPath查询XML中的数据448
22.6 本章小结449
22.7 实战练习450
第23章 Ajax技术451
视频讲解:77分钟
23.1 Ajax概述452
23.1.1 什么是Ajax452
23.1.2 Ajax的开发模式452
23.1.3 Ajax的优点452
23.2 Ajax技术的组成453
23.2.1 JavaScript脚本语言453
23.2.2 XMLHttpRequest对象453
23.2.3 XML语言458
23.2.4 DOM458
23.2.5 CSS458
23.3 Ajax与PHP的交互458
23.3.1 通过GET方式与PHP进行交互459
23.3.2 通过POST方式与PHP进行交互461
23.4 Ajax开发常见问题463
23.5 实战464
23.5.1 在PHP中应用Ajax技术检测用户名465
23.5.2 在PHP中应用Ajax技术实现博客
文章类别添加467
23.5.3 使用jQuery制作级联下拉列表框469
23.6 本章小结471
23.7 实战练习471
第24章 Smarty模板技术473
视频讲解:102分钟
24.1 Smarty简介474
24.1.1 Smarty模板引擎474
24.1.2 开发模式与运行流程474
24.2 Smarty的安装配置475
24.2.1 Smarty下载和安装475
24.2.2 Smarty配置475
24.2.3 第一个Smarty程序477
24.3 Smarty模板设计478
24.3.1 Smarty模板文件479
24.3.2 注释479
24.3.3 变量479
24.3.4 修饰变量482
24.3.5 流程控制483
24.3.6 内建函数486
24.4 Smarty程序设计488
24.4.1 Smarty中的常用方法488
24.4.2 Smarty的配置变量489
24.5 实战490
24.5.1 通过Smarty实现网页的动静分离490
24.5.2 Smarty分页类493
24.5.3 网站公告496
24.6 本章小结498
24.7 实战练习498
第4部分 项目实战
第25章 博客管理系统501
视频讲解:169分钟
25.1 项目描述502
25.2 系统分析502
25.2.1 需求分析502
25.2.2 系统目标503
25.2.3 系统功能结构503
25.2.4 系统流程图504
25.3 软件开发环境504
25.4 数据库与数据表的设计505
25.4.1 数据库分析505
25.4.2 数据库E-R图设计505
25.4.3 创建数据库和数据表506
25.5 首页设计508
25.5.1 首页概述508
25.5.2 首页技术分析508
25.5.3 首页的实现过程510
25.6 用户管理模块设计511
25.6.1 用户管理模块概述511
25.6.2 用户注册511
25.6.3 用户登录514
25.6.4 查询用户信息515
25.6.5 浏览用户信息517
25.7 文章管理模块设计518
25.7.1 文章管理模块概述518
25.7.2 文章管理模块技术分析519
25.7.3 添加文章的实现过程521
25.7.4 文章列表的实现过程522
25.7.5 查看、评论文章的实现过程524
25.7.6 删除文章或评论的实现过程526
25.8 图片上传模块设计527
25.8.1 图片上传模块概述527
25.8.2 图片上传模块技术分析528
25.8.3 图片上传的实现过程532
25.8.4 图片浏览的实现过程535
25.8.5 删除图片的实现过程537
25.9 朋友圈模块设计538
25.9.1 朋友圈模块概述538
25.9.2 朋友圈模块技术分析538
25.9.3 查询好友的实现过程539
25.10 项目发布541
25.10.1 通过个人服务器发布项目541
25.10.2 通过租用空间发布项目541
25.11 开发常见问题与解决543
25.12 本章小结544
第26章 应用Smarty模板开发
电子商务平台545
视频讲解:281分钟
26.1 项目描述546
26.2 系统分析546
26.2.1 需求分析546
26.2.2 编写项目计划书546
26.3 系统设计551
26.3.1 系统目标551
26.3.2 系统功能结构551
26.3.3 系统流程图552
26.4 系统开发环境553
26.5 数据库与数据表的设计553
26.5.1 数据库分析553
26.5.2 创建数据库和数据表555
26.6 搭建系统框架556
26.7 公共文件设计557
26.7.1 数据库连接文件557
26.7.2 Smarty配置文件558
26.7.3 XMLHttpRequest对象文件558
26.7.4 表单样式文件558
26.8 前台首页设计561
26.9 登录模块设计562
26.9.1 用户注册563
26.9.2 用户登录569
26.9.3 找回密码571
26.10 会员信息模块设计576
26.10.1 会员中心576
26.10.2 安全退出579
26.11 商品展示模块579
26.11.1 创建PHP页580
26.11.2 创建模板页580
26.11.3 js脚本页面581
26.12 购物车模块设计582
26.12.1 添加商品582
26.12.2 显示购物车584
26.12.3 更改商品数量586
26.12.4 删除商品587
26.12.5 保存购物车589
26.13 收银台模块设计591
26.13.1 显示订单592
26.13.2 填写订单592
26.13.3 处理订单593
26.13.4 反馈订单595
26.13.5 查询订单596
26.14 后台首页设计599
26.14.1 后台首页布局599
26.14.2 DIV+JavaScript+CSS实现树状
菜单600
26.15 类别管理模块设计601
26.15.1 添加类别601
26.15.2 查看类别604
26.16 订单管理模块设计608
26.17 开发的常见问题611
26.17.1 解决Ajax的乱码问题611
26.17.2 使用JS脚本获取、输出标签内容611
26.17.3 使用浮动框架做关联菜单612
26.17.4 禁用页面缓存612
26.17.5 在新窗口中使用Session613
26.17.6 防止站外链接613
26.17.7 判断上传文件格式613
26.18 网站运行错误分析614
26.18.1 数据库导致的错误614
26.18.2 Smarty模板的配置错误615
26.19 本章小结616
第27章 办公自动化系统617
27.1 项目描述618
27.2 技术准备619
27.3 开发过程620
27.3.1 数据库设计620
27.3.2 前台首页设计620
27.3.3 人事消息模块设计621
27.3.4 考勤管理模块设计622
27.3.5 后台首页设计623
27.3.6 部门管理模块设计623
27.4 本章小结624
第28章 供求信息网625
28.1 项目描述626
28.2 技术准备626
28.3 开发过程627
28.3.1 数据库设计627
28.3.2 前台功能设计627
28.3.3 免费供求信息发布模块设计628
28.3.4 信息检索模块设计629
28.3.5 后台功能模块设计630
28.3.6 付费供求信息发布模块设计631
28.4 本章小结632
第29章 图书借阅管理系统633
29.1 项目描述634
29.2 技术准备635
29.3 开发过程635
29.3.1 数据库设计635
29.3.2 功能模块概述636
29.3.3 管理员模块636
29.3.4 图书档案管理模块638
29.3.5 图书借还模块638
29.4 本章小结640
附录A PHP编码规则…….641
A.1 PHP File文件格式641
A.1.1 常规641
A.1.2 缩进641
A.1.3 行的最大长度641
A.1.4 行结束标志641
A.1.5 引号642
A.1.6 运算符、小括号、空格和关键词642
A.2 命名约定643
A.2.1 类643
A.2.2 接口643
A.2.3 文件名643
A.2.4 函数和方法644
A.2.5 变量645
A.2.6 常量645
A.2.7 数据库表和字段645
A.3 编码风格646
A.3.1 PHP代码划分(Demarcation)646
A.3.2 字符串646
A.3.3 数组647
A.3.4 类647
A.3.5 函数和方法648
A.3.6 控制语句649
A.3.7 数据库650
A.3.8 注释文档651