第1篇 新 手 入 门
第1章 初识PHP
视频讲解:7分钟
1.1 PHP概述
1.1.1 PHP是什么
1.1.2 PHP 5的新特性
1.1.3 PHP的语言优势
1.1.4 PHP语言的发展
1.2 PHP与其他语言的比较
1.3 PHP语言相关术语
1.4 资深程序员谈如何学习PHP
1.5 常用代码编辑工具
1.6 学习资源
1.6.1 PHP参考手册
1.6.2 PHP学习讨论
1.7 成功案例
1.8 本章小结
第2章 PHP环境搭建
视频讲解:75分钟
2.1 搭建PHP开发环境的准备工作
2.1.1 在Windows下搭建PHP开发环境的准备工作
2.1.2 在Linux下搭建PHP开发环境的准备工作
2.2 Apache服务器的安装和配置
2.2.1 在Windows下安装Apache服务器
2.2.2 在Linux下安装Apache服务器
2.3 PHP的安装和配置
2.3.1 在Windows下安装PHP
2.3.2 在Linux下安装PHP
2.4 MySQL服务器的安装和配置
2.4.1 在Windows下安装MySQL服务器
2.4.2 在Linux下安装MySQL服务器
2.5 初学者——应用组合包快速搭建PHP环境
2.6 第一个PHP程序
2.6.1 使用Macromedia Dreamweaver 8编写源程序
2.6.2 发布和运行PHP程序
2.7 环境安装常见问题
2.7.1 Apache安装常见问题
2.7.2 PHP安装常见问题
2.7.3 MySQL安装常见问题
2.8 实战
2.8.1 输出系统的当前时间
2.8.2 输出“明日科技欢迎你”
2.8.3 输出一张漂亮的图片
2.8.4 更改Apache服务器的端口号为82
2.8.5 Apache服务器的端口号修改后运行第一个PHP程序
2.9 本章小结
2.10 学习成果检验
第1篇 新 手 入 门
第1章 初识PHP
视频讲解:7分钟
1.1 PHP概述
1.1.1 PHP是什么
1.1.2 PHP 5的新特性
1.1.3 PHP的语言优势
1.1.4 PHP语言的发展
1.2 PHP与其他语言的比较
1.3 PHP语言相关术语
1.4 资深程序员谈如何学习PHP
1.5 常用代码编辑工具
1.6 学习资源
1.6.1 PHP参考手册
1.6.2 PHP学习讨论
1.7 成功案例
1.8 本章小结
第2章 PHP环境搭建
视频讲解:75分钟
2.1 搭建PHP开发环境的准备工作
2.1.1 在Windows下搭建PHP开发环境的准备工作
2.1.2 在Linux下搭建PHP开发环境的准备工作
2.2 Apache服务器的安装和配置
2.2.1 在Windows下安装Apache服务器
2.2.2 在Linux下安装Apache服务器
2.3 PHP的安装和配置
2.3.1 在Windows下安装PHP
2.3.2 在Linux下安装PHP
2.4 MySQL服务器的安装和配置
2.4.1 在Windows下安装MySQL服务器
2.4.2 在Linux下安装MySQL服务器
2.5 初学者——应用组合包快速搭建PHP环境
2.6 第一个PHP程序
2.6.1 使用Macromedia Dreamweaver 8编写源程序
2.6.2 发布和运行PHP程序
2.7 环境安装常见问题
2.7.1 Apache安装常见问题
2.7.2 PHP安装常见问题
2.7.3 MySQL安装常见问题
2.8 实战
2.8.1 输出系统的当前时间
2.8.2 输出“明日科技欢迎你”
2.8.3 输出一张漂亮的图片
2.8.4 更改Apache服务器的端口号为82
2.8.5 Apache服务器的端口号修改后运行第一个PHP程序
2.9 本章小结
2.10 学习成果检验
第3章 PHP语言基础
视频讲解:125分钟
3.1 学习语言基础的重要性
3.2 PHP语法基础
3.2.1 PHP标识符
3.2.2 PHP的注释
3.3 PHP的数据类型
3.3.1 整型
3.3.2 布尔型
3.3.3 浮点型
3.3.4 字符串型
3.3.5 null型
3.3.6 数据类型的转换
3.4 PHP常量
3.4.1 声明和使用常量
3.4.2 预定义常量
3.5 PHP变量
3.5.1 变量声明及使用
3.5.2 变量作用域
3.5.3 可变变量
3.5.4 预定义变量
3.5.5 变量的生存周期
3.6 PHP运算符
3.6.1 字符串运算符
3.6.2 算术运算符
3.6.3 赋值运算符
3.6.4 递增或递减运算符
3.6.5 位运算符
3.6.6 逻辑运算符
3.6.7 比较运算符
3.6.8 条件运算符
3.6.9 运算符的使用规则
3.7 PHP的表达式
3.8 实战
3.8.1 判断指定的年份是否为闰年
3.8.2 检测变量是否为整型
3.8.3 输出姚明的个人信息
3.8.4 计算长方形的面积
3.8.5 比较某一天的产品销量
3.9 本章小结
3.10 学习成果检验
第4章 流程控制语句
视频讲解:80分钟
4.1 学前导读
4.1.1 什么是算法
4.1.2 算法的描述方法
4.1.3 程序的3种控制结构
4.2 条件控制语句
4.2.1 if条件语句
4.2.2 switch…case分支控制语句
4.3 循环控制语句
4.3.1 while循环语句
4.3.2 do…while循环语句
4.3.3 for循环语句
4.3.4 foreach循环语句
4.4 跳转控制语句
4.4.1 应用break语句跳出循环
4.4.2 应用continue语句跳出循环
4.5 实战
4.5.1 过滤留言信息中的敏感词
4.5.2 图书信息显示
4.5.3 应用switch语句设计网站主页
4.5.4 应用continue语句计算100以内奇数的和
4.5.5 应用for语句制作一个乘法口诀表
4.6 本章小结
4.7 学习成果检验
第5章 函数
视频讲解:75分钟
5.1 自定义函数
5.1.1 函数的命名规则
5.1.2 自定义函数格式
5.1.3 调用自定义函数
5.1.4 函数的参数
5.1.5 函数返回值
5.1.6 嵌套调用
5.1.7 递归调用
5.2 内建函数
5.3 输出语句
5.3.1 应用print语句输出字符
5.3.2 应用echo语句输出字符
5.3.3 应用printf语句格式化输出字符
5.3.4 应用sprintf语句格式化输出字符
5.4 引用文件
5.4.1 应用include语句引用文件
5.4.2 应用require语句引用文件
5.4.3 应用include_once语句引用文件
5.4.4 应用require_once语句引用文件
5.4.5 include语句和require语句的使用区别
5.4.6 include_once语句和require_once语句的使用区别
5.5 实战
5.5.1 通过自定义函数防止新闻主题信息出现中文乱码
5.5.2 应用include语句构建在线音乐网站主页
5.5.3 对关键字进行高亮显示
5.5.4 获取上传文件的后缀名
5.5.5 自定义一个为数字取绝对值的函数
5.6 本章小结
5.7 学习成果检验
第6章 字符串
视频讲解:76分钟
6.1 字符串简介
6.2 单引号与双引号
6.3 定界符
6.4 连接字符串
6.5 转义、还原字符串
6.5.1 手动转义、还原字符串
6.5.2 自动转义、还原字符串
6.6 获取字符串长度
6.7 截取字符串
6.8 比较字符串
6.8.1 按字节比较
6.8.2 按自然排序法比较
6.8.3 指定从源字符串的位置比较
6.9 检索字符串
6.9.1 应用strstr()函数检索指定的关键字
6.9.2 应用substr_count()函数检索子串出现的次数
6.10 替换子字符串
6.11 去除字符串中空白字符和特殊字符
6.11.1 去除字符串左边空白字符和特殊字符
6.11.2 去除字符串右边空白字符和特殊字符
6.11.3 去除字符串两边空白字符和特殊字符
6.12 格式化字符串
6.13 分割字符串
6.14 字符串与HTML相互转换
6.15 实战
6.15.1 超长文本的分页显示
6.15.2 控制页面中输出字符串的长度
6.15.3 应用explode()函数和implode()函数分割和合成字
符串
6.15.4 应用substr()函数截取超长字符串
6.15.5 统一英文注册用户首字母大写
6.16 本章小结
6.17 学习成果检验
第7章 正则表达式
视频讲解:82分钟
7.1 正则表达式是什么
7.2 正则表达式常用术语
7.3 正则表达式语法规则
7.3.1 行定位符(^和$)
7.3.2 字符类([])
7.3.3 选择字符(|)
7.3.4 连字符(-)
7.3.5 排除字符(^)
7.3.6 限定符(? * + {n,m})
7.3.7 点字符(.)
7.3.8 转义字符(\)
7.3.9 反斜杠(\)
7.3.10 括号字符(())
7.3.11 反向引用
7.4 POSIX扩展正则表达式函数
7.4.1 查找字符串
7.4.2 替换字符串
7.4.3 分割字符串
7.5 PCRE兼容正则表达式函数
7.5.1 查找字符串
7.5.2 替换字符串
7.6 实战
7.6.1 通过正则表达式无刷新验证用户注册信息是否合理
7.6.2 验证E-mail地址格式是否正确
7.6.3 验证文本框输入的是否为整数
7.6.4 验证IP地址是否有效
7.6.5 验证注册信息是否符合要求
7.7 本章小结
7.8 学习成果检验
第8章 PHP数组
视频讲解:90分钟
8.1 数组是什么
8.2 声明数组
8.2.1 数组命名规则
8.2.2 通过PHP函数创建数组
8.2.3 通过数组标识符“[]”创建数组
8.3 数组的类型
8.3.1 数字索引数组
8.3.2 关联数组
8.4 输出数组
8.5 数组的构造
8.5.1 创建一维数组
8.5.2 创建二维数组
8.6 遍历数组
8.6.1 foreach结构遍历数组
8.6.2 each()函数遍历数组
8.6.3 list()函数遍历数组
8.6.4 for语句遍历数组
8.7 合并数组
8.8 字符串与数组的转换
8.8.1 应用explode()函数将字符串转换成数组
8.8.2 应用implode()函数将数组转换成一个新字符串
8.9 统计数组元素个数
8.10 数组排序
8.10.1 数字数组排序
8.10.2 关联数组排序
8.11 实战
8.11.1 向投票系统添加投票选项
8.11.2 用foreach结构遍历二维数组
8.11.3 生成在线考试题
8.11.4 判断元素值是否在数组中
8.11.5 向数组中添加元素
8.12 本章小结
8.13 学习成果检验
第9章 日期和时间
视频讲解:93分钟
9.1 系统时区设置
9.1.1 时区的划分
9.1.2 PHP中的时区设置
9.2 UNIX时间戳
9.2.1 什么是时间戳
9.2.2 UNIX时间戳
9.2.3 获取指定日期的时间戳
9.2.4 获取当前时间戳
9.2.5 将英文文本的日期时间描述解析为UNIX时间戳
9.3 PHP日期和时间的处理
9.3.1 格式化日期和时间
9.3.2 获取日期和时间信息
9.3.3 获取本地化的日期和时间
9.3.4 检验日期和时间的有效性
9.4 实战
9.4.1 实现倒计时的功能
9.4.2 实现生日提示功能
9.4.3 计算在线考试用时和剩余时间
9.4.4 网页闹钟
9.4.5 输出中文格式的日期和时间
9.5 本章小结
9.6 学习成果检验
第10章 综合实例(一)——注册登录
视频讲解:46分钟
10.1 注册及登录验证概述
10.1.1 用户注册流程
10.1.2 用户登录流程
10.1.3 找回密码流程
10.1.4 程序预览
10.2 热点关键技术
10.2.1 防SQL注入技术
10.2.2 Ajax无刷新验证技术
10.2.3 验证码技术
10.2.4 E-mail激活技术
10.2.5 应用键盘响应事件验证信息是否合法
10.2.6 PHP中操作Cookie技术
10.2.7 在JavaScript中操作Cookie技术
10.2.8 用户自动登录技术
10.3 数据库设计
10.3.1 数据库设计概述
10.3.2 封装数据库连接-操作类
10.4 用户注册
10.4.1 用户注册功能概述
10.4.2 注册页面设计
10.4.3 检测用户名是否被占用
10.4.4 注册信息处理
10.4.5 注册用户激活
10.4.6 免激活用户注册
10.5 用户登录
10.5.1 用户登录功能概述
10.5.2 登录页面设计
10.5.3 登录处理页
10.5.4 生成及刷新验证码
10.6 找回密码
10.6.1 找回密码功能概述
10.6.2 找回密码功能实现过程
第2篇 数 据 库 篇
第11章 MySQL数据库基本操作
视频讲解:70分钟
11.1 MySQL简介
11.1.1 MySQL是什么
11.1.2 MySQL特点
11.1.3 MySQL 5支持的特性
11.2 启动、连接、断开和停止MySQL服务器
11.2.1 启动MySQL服务器
11.2.2 连接和断开MySQL服务器
11.2.3 停止MySQL服务器
11.3 使用MySQL命令行操作数据库
11.3.1 创建数据库
11.3.2 查看数据库
11.3.3 选择数据库
11.3.4 删除数据库
11.4 使用MySQL命令行操作数据表
11.4.1 创建数据表
11.4.2 查看表结构
11.4.3 修改表结构
11.4.4 重命名表
11.4.5 删除表
11.5 MySQL语句操作
11.5.1 插入记录
11.5.2 浏览数据库记录
11.5.3 修改记录
11.5.4 删除记录
11.6 实战
11.6.1 管理MySQL数据库及数据表
11.6.2 创建db_book图书数据库以及图书信息表tb_mrbook
11.6.3 向tb_mrbook表中添加、修改和删除数据
11.6.4 用mysqldump命令导出数据库
11.6.5 用mysql命令将数据库文件导入数据库
11.7 本章小结
11.8 学习成果检验
第12章 phpMyAdmin图形化管理工具
视频讲解:57分钟
12.1 phpMyAdmin简介
12.2 phpMyAdmin的安装和配置
12.2.1 Windows系统下phpMyAdmin的安装配置
12.2.2 Linux系统下phpMyAdmin的安装配置
12.3 phpMyAdmin的使用
12.3.1 管理数据库
12.3.2 管理数据表
12.3.3 管理数据记录
12.3.4 导入/导出数据
12.4 实战
12.4.1 通过phpMyAdmin图形化管理工具修改数据库密码
12.4.2 使用phpMyAdmin设置编码格式
12.4.3 通过phpMyAdmin添加服务器新用户
12.4.4 在phpMyAdmin中删除MySQL服务器登录密码
12.4.5 手动备份、恢复MySQL数据库
12.5 本章小结
12.6 学习成果检验
第13章 使用MySQL函数操作数据库
视频讲解:182分钟
13.1 PHP访问MySQL数据库的一般步骤
13.2 使用MySQL函数库
13.2.1 连接MySQL服务器
13.2.2 选择数据库
13.2.3 执行SQL语句
13.2.4 应用mysql_fetch_array()函数获取结果集
13.2.5 应用mysql_fetch_object()函数获取结果集
13.2.6 应用mysql_fetch_row()函数获取结果集
13.2.7 应用mysql_num_rows()函数获取记录数
13.2.8 关闭连接
13.3 PHP操作MySQL数据库
13.3.1 应用insert命令动态添加公告信息
13.3.2 应用select命令查询公告信息
13.3.3 解决截取公告主题乱码问题
13.3.4 分页显示公告信息
13.3.5 应用update命令动态编辑公告信息
13.3.6 应用delete命令动态删除公告信息
13.4 实战
13.4.1 输入页码跳转到指定页
13.4.2 图片的分栏分页显示
13.4.3 留言板
13.4.4 高级查询
13.4.5 分组统计
13.4.6 使用下拉菜单跳转页面
13.5 本章小结
13.6 学习成果检验
第14章 ADODB类库
视频讲解:96分钟
14.1 ADODB类库是什么
14.2 ADODB支持的数据库
14.3 ADODB下载与安装
14.4 ADODB类库
14.4.1 连接数据库函数
14.4.2 操作数据库函数
14.4.3 控制结果集存取方式函数
14.4.4 操作结果集函数
14.4.5 处理事务函数
14.4.6 生成HTML表格函数
14.4.7 生成下拉列表框函数
14.4.8 实现分页功能函数
14.4.9 错误处理函数
14.5 实战
14.5.1 实现分页
14.5.2 处理事务
14.5.3 缓存函数+ADODB动态生成静态页
14.5.4 添加商品信息
14.5.5 删除图书信息
14.6 本章小结
14.7 学习成果检验
第15章 PDO数据库抽象层
视频讲解:60分钟
15.1 什么是PDO
15.1.1 PDO概述
15.1.2 PDO特点
15.1.3 安装PDO
15.2 PDO连接数据库
15.2.1 PDO构造函数
15.2.2 DSN详解
15.3 PDO中执行SQL语句
15.3.1 exec()方法
15.3.2 query()方法
15.3.3 预处理语句——prepare()和execute()
15.4 PDO中获取结果集
15.4.1 fetch()方法
15.4.2 fetchAll()方法
15.4.3 fetchColumn()方法
15.5 PDO中捕获SQL语句中的错误
15.5.1 使用默认模式——PDO::ERRMODE_SILENT
15.5.2 使用警告模式——PDO::ERRMODE_WARNING
15.5.3 使用异常模式——PDO::ERRMODE_EXCEPTION
15.6 PDO中错误处理
15.6.1 errorCode()方法
15.6.2 errorInfo()方法
15.7 PDO中事务处理
15.8 PDO中存储过程
15.9 实战
15.9.1 明日书店会员注册
15.9.2 添加留言信息
15.9.3 查询图书信息
15.9.4 删除会员信息
15.9.5 修改商品信息
15.10 本章小结
15.11 学习成果检验
第16章 综合实例(二)——在线论坛
视频讲解:25分钟
16.1 在线论坛概述
16.1.1 模块概述
16.1.2 功能结构
16.1.3 权限分配
16.1.4 程序预览
16.2 数据库设计
16.2.1 数据库设计
16.2.2 数据表设计
16.2.3 连接数据库
16.3 用户注册
16.3.1 用户注册概述
16.3.2 检测用户名是否被占用
16.3.3 用户注册的实现
16.4 在线论坛前台
16.4.1 帖子浏览功能概述
16.4.2 分页显示回复信息
16.4.3 帖子的发布
16.4.4 注销用户
16.5 后台管理
16.5.1 在线论坛后台管理概述
16.5.2 通过switch和include语句设计后台首页框架
16.5.3 栏目管理
16.6 技术提炼
16.6.1 分页技术
16.6.2 网页访问权限设置
16.6.3 页面刷新技术
第3篇 核 心 技 术
第17章 会话管理
视频讲解:117分钟
17.1 Cookie管理
17.1.1 了解Cookie
17.1.2 创建Cookie
17.1.3 读取Cookie
17.1.4 删除Cookie
17.1.5 Cookie应用的注意事项
17.1.6 Cookie的综合应用——自动登录
17.2 Session管理
17.2.1 了解Session
17.2.2 启动Session
17.2.3 应用Session
17.2.4 删除Session
17.2.5 Session的综合应用——通过Session控制页面访问
权限
17.3 Session与Cookie的比较
17.4 实战
17.4.1 通过Cookie实现单点登录
17.4.2 Session购物车
17.4.3 防止页面刷新
17.4.4 通过Session变量屏蔽刷新页面对计数器的影响
17.4.5 应用Session变量控制用户登录时间
17.5 本章小结
17.6 学习成果检验
第18章 图形图像
视频讲解:106分钟
18.1 了解GD2函数库
18.2 参数设置
18.3 Jpgraph类库
18.3.1 Jpgraph类库简介
18.3.2 Jpgraph的安装
18.3.3 Jpgraph的配置
18.4 常用图像处理
18.4.1 创建画布
18.4.2 颜色处理
18.4.3 输出图像
18.4.4 绘制基本图形
18.4.5 填充几何图形
18.4.6 输出文字
18.5 实战
18.5.1 创建一个简单的图像
18.5.2 应用GD2函数在照片上添加文字
18.5.3 应用图像处理技术生成验证码
18.5.4 Jpgraph创建柱状图展示年度收支情况
18.5.5 Jpgraph创建折线图统计图书销售走势
18.5.6 Jpgraph创建3D饼形图展示部门业绩比较
18.6 本章小结
18.7 学习成果检验
第19章 文件系统
视频讲解:74分钟
19.1 文件处理
19.1.1 打开文件
19.1.2 读取文件
19.1.3 写入文件
19.1.4 操作文件
19.1.5 关闭文件
19.2 文件上传
19.2.1 配置php.ini文件
19.2.2 预定义变量$_FILES
19.2.3 文件上传函数
19.3 文件处理的高级应用
19.3.1 远程文件的访问
19.3.2 文件指针
19.3.3 锁定文件
19.4 目录处理
19.4.1 打开目录
19.4.2 浏览目录
19.4.3 操作目录
19.4.4 关闭目录
19.5 实战
19.5.1 多图片上传
19.5.2 通过文本文件统计页面访问量
19.5.3 规范化的文件上传
19.5.4 文本文件的分页输出
19.5.5 从文本文件中读取注册服务条款
19.6 本章小结
19.7 学习成果检验
第20章 面向对象
视频讲解:160分钟
20.1 面向对象的基本概念
20.1.1 类
20.1.2 对象
20.1.3 面向对象编程的三大特点
20.2 类与对象
20.2.1 定义类
20.2.2 实例化类
20.2.3 使用对象
20.2.4 成员变量
20.2.5 成员函数
20.3 类的权限修饰符
20.3.1 public(公有成员)
20.3.2 private(私有成员)
20.3.3 protected(保护成员)
20.4 构造函数
20.4.1 创建构造函数
20.4.2 调用父类构造函数
20.5 析构函数
20.6 使用$this变量访问方法和属性
20.7 static关键字
20.8 final关键字
20.9 抽象类
20.10 接口的使用
20.11 实战
20.11.1 面向对象的用户登录身份验证
20.11.2 面向对象的数据分页显示
20.11.3 封装一个数据库操作类
20.11.4 用面向对象生成图像验证码
20.11.5 封装一个显示页码的分页类
20.11.6 数据统计类中定义求数字平均值的方法
20.11.7 封装特殊字符转义类
20.12 本章小结
20.13 学习成果检验
第21章 PHP加密技术
视频讲解:8分钟
21.1 加密技术简介
21.1.1 MD5算法
21.1.2 SHA1算法
21.1.3 DES算法
21.1.4 MIME/BASE64的算法
21.2 PHP内置加密函数
21.2.1 使用crypt()函数进行加密
21.2.2 使用md5()函数进行加密
21.2.3 使用sha1()函数进行加密
21.2.4 使用base64_encode()函数进行编码
21.2.5 使用base64_decode()函数进行解码
21.3 PHP加密扩展库
21.3.1 Mcrypt扩展库
21.3.2 Mhash扩展库
21.4 实战
21.4.1 用户注册密码的MD5加密
21.4.2 用户注册密码的crypt加密
21.4.3 用自定义函数对用户密码进行加密
21.4.4 隐藏PHP文件扩展名
21.4.5 禁止用户输入敏感字符
21.5 本章小结
21.6 学习成果检验
第22章 程序调试与异常处理
视频讲解:70分钟
22.1 程序基本调试流程
22.2 PHP中的错误类型
22.2.1 语法错误
22.2.2 语义错误
22.2.3 逻辑错误
22.2.4 注释错误
22.2.5 运行错误
22.3 PHP错误的调试
22.3.1 PHP的错误报告
22.3.2 启动错误报告
22.3.3 使用print语句调试程序
22.3.4 应用前缀字符@屏蔽PHP脚本错误提示
22.3.5 使用错误处理器记录日志
22.4 SQL错误的调试
22.4.1 PHP与MySQL连接错误
22.4.2 SQL语句错误
22.5 实战
22.5.1 分析、解决PHP与MySQL连接错误
22.5.2 解决数据库乱码问题
22.5.3 封装异常处理类
22.5.4 使用错误处理器记录日志
22.5.5 通过phpMyAdmin调试SQL语句中的错误
22.6 本章小结
22.7 学习成果检验
第23章 综合实例(三)——投票系统
视频讲解:45分钟
23.1 投票系统概述
23.1.1 模块概述
23.1.2 功能结构
23.1.3 程序预览
23.2 数据库设计
23.2.1 数据库设计
23.2.2 数据表设计
23.2.3 连接数据库
23.3 投票
23.3.1 用户注册
23.3.2 用户登录
23.3.3 投票主题浏览
23.3.4 投票内容提交
23.4 投票管理
23.4.1 投票管理概述
23.4.2 动态生成投票主题及选项
23.4.3 删除投票主题与投票内容
23.4.4 刷新投票结果
23.5 技术提炼
23.5.1 通过3D饼形图分析投票结果
23.5.2 通过柱形图分析投票结果
23.5.3 Cookie投票限制
23.5.4 通过IP限制重复投票
第4篇 Web前端开发
第24章 PHP与Web页面交互
视频讲解:124分钟
24.1 表单
24.1.1 创建表单
24.1.2 认识表单元素
24.2 在Web页中创建表单
24.3 在Web页中嵌入PHP脚本
24.3.1 在HTML标记中嵌入PHP脚本
24.3.2 为表单元素赋值
24.4 提交表单数据
24.4.1 POST方法提交表单数据
24.4.2 GET方法提交表单数据
24.4.3 POST方法与GET方法的使用区别
24.5 PHP全局变量
24.5.1 $_POST[]全局变量
24.5.2 $_GET[]全局变量
24.5.3 $_SESSION[]全局变量
24.6 对URL传递的参数进行编/解码
24.6.1 对URL传递的参数进行编码
24.6.2 对URL编码的字符串进行解码
24.7 实战
24.7.1 发布和查看公告信息
24.7.2 图书借阅
24.7.3 设计一个用户注册表单并获取用户注册信息
24.7.4 限制多行文本域输入的字符个数
24.7.5 获取用户的个人信息
24.7.6 用户登录
24.7.7 设置文本框的只读属性
24.7.8 对超链接传递的数据进行编码
24.8 本章小结
24.9 学习成果检验
第25章 PHP与JavaScript交互
视频讲解:81分钟
25.1 了解JavaScript
25.1.1 JavaScript是什么
25.1.2 JavaScript能做什么
25.2 JavaScript语言基础
25.2.1 JavaScript数据类型
25.2.2 JavaScript变量
25.2.3 JavaScript注释
25.3 自定义函数
25.4 JavaScript脚本嵌入方式
25.4.1 在HTML中嵌入JavaScript脚本
25.4.2 应用JavaScript事件调用自定义函数
25.4.3 在PHP动态网页中引用JS文件
25.4.4 解决浏览器不支持JavaScript的问题
25.5 实战
25.5.1 应用JavaScript脚本制作树状导航菜单
25.5.2 PHP与JavaScript脚本的交互应用
25.5.3 用JavaScript脚本实现年月日的联动
25.5.4 用JavaScript脚本实现几秒后跳转页面
25.5.5 确认框confirm()的应用
25.6 本章小结
25.7 学习成果检验
第26章 XML技术
视频讲解:79分钟
26.1 XML概述
26.2 XML语法
26.2.1 XML文档结构
26.2.2 XML声明
26.2.3 XML处理指令
26.2.4 XML注释
26.2.5 XML元素
26.2.6 XML属性
26.3 创建XML文档
26.4 SimpleXML
26.4.1 创建SimpleXML对象
26.4.2 遍历所有子元素
26.4.3 遍历所有属性
26.4.4 访问特定节点元素和属性
26.4.5 修改XML数据
26.4.6 保存XML文档
26.5 实战
26.5.1 动态创建XML文档
26.5.2 动态读取XML文档
26.5.3 通过XPath查询XML中的数据
26.5.4 动态添加XML中的数据
26.5.5 动态删除XML中的数据
26.6 本章小结
26.7 学习成果检验
第27章 Ajax技术
视频讲解:77分钟
27.1 Ajax概述
27.1.1 什么是Ajax
27.1.2 Ajax的开发模式
27.1.3 Ajax的优点
27.2 Ajax技术的组成
27.2.1 JavaScript脚本语言
27.2.2 XMLHttpRequest对象
27.2.3 XML语言
27.2.4 DOM
27.2.5 CSS
27.3 Ajax与PHP的交互
27.3.1 通过GET方式与PHP进行交互
27.3.2 通过POST方式与PHP进行交互
27.4 Ajax开发常见问题
27.5 实战
27.5.1 在PHP中应用Ajax技术检测用户名
27.5.2 在PHP中应用Ajax技术实现博客文章类别添加
27.5.3 使用jQuery制作级联下拉列表框
27.5.4 应用Ajax技术删除数据
27.5.5 应用Ajax技术制作分类列表框
27.6 本章小结
27.7 学习成果检验
第28章 综合实例(四)——购物车
视频讲解:45分钟
28.1 购物车模块概述
28.1.1 功能概述
28.1.2 购物车操作流程
28.1.3 程序预览
28.2 数据库设计
28.2.1 创建数据库
28.2.2 创建数据表
28.3 首页设计
28.3.1 首页概述
28.3.2 首页实现过程
28.4 登录模块设计
28.4.1 登录模块概述
28.4.2 用户注册
28.4.3 用户登录
28.5 商品展示模块设计
28.5.1 商品展示模块概述
28.5.2 商品展示模块
28.6 购物车模块设计
28.6.1 购物车模块概述
28.6.2 购物车展示
28.6.3 更改商品数量
28.6.4 删除商品
28.6.5 保存购物车
28.7 技术提炼
28.7.1 数据库连接、管理和分页类文件
28.7.2 Smarty模板配置类文件
28.7.3 执行类的实例化文件
28.7.4 Smarty模板页中的框架技术
28.7.5 Ajax无刷新验证技术
28.7.6 分页技术
28.7.7 购物车中商品添加技术
第5篇 框 架 应 用
第29章 Smarty模板技术
视频讲解:102分钟
29.1 Smarty简介
29.1.1 Smarty模板引擎
29.1.2 开发模式与运行流程
29.2 Smarty的安装配置
29.2.1 Smarty下载和安装
29.2.2 Smarty配置
29.2.3 第一个Smarty程序
29.3 Smarty模板设计
29.3.1 Smarty模板文件
29.3.2 注释
29.3.3 变量
29.3.4 修饰变量
29.3.5 流程控制
29.3.6 内建函数
29.4 Smarty程序设计
29.4.1 Smarty中的常用方法
29.4.2 Smarty的配置变量
29.5 实战
29.5.1 通过Smarty实现网页的动静分离
29.5.2 Smarty分页类
29.5.3 网站公告
29.5.4 Smarty模板truncate()方法截取字符串
29.5.5 输出会员信息
29.6 本章小结
29.7 学习成果检验
第30章 ThinkPHP框架
视频讲解:150分钟
30.1 ThinkPHP简介
30.1.1 ThinkPHP框架的特点
30.1.2 环境要求
30.1.3 下载ThinkPHP框架
30.2 ThinkPHP架构
30.2.1 ThinkPHP的目录结构
30.2.2 自动生成目录
30.2.3 项目目录部署方案
30.2.4 命名规范
30.2.5 项目构建流程
30.3 ThinkPHP的配置
30.3.1 配置格式
30.3.2 调试配置
30.4 ThinkPHP的控制器
30.4.1 控制器
30.4.2 跨模块调用
30.5 ThinkPHP的模型
30.5.1 模型的命名
30.5.2 实例化模型
30.5.3 属性访问
30.5.4 连接数据库
30.5.5 创建数据
30.5.6 连贯操作
30.5.7 CURD操作
30.6 ThinkPHP的视图
30.6.1 模板定义
30.6.2 模板赋值
30.6.3 指定模板文件
30.6.4 特殊字符串替换
30.7 内置ThinkTemplate模板引擎
30.8 实战
30.8.1 用户信息的查询、更新和删除
30.8.2 用户登录
30.8.3 商品信息的分页输出
30.8.4 新闻发布
30.8.5 带查询条件的分页
30.9 本章小结
30.10 学习成果检验
第31章 综合实例(五)——明日导航网
视频讲解:39分钟
31.1 需求分析
31.2 系统设计
31.2.1 系统功能结构
31.2.2 系统预览
31.3 数据库设计
31.3.1 数据库设计
31.3.2 数据表设计
31.3.3 连接数据库
31.4 ThinkPHP架设项目结构
31.4.1 下载ThinkPHP框架
31.4.2 自动生成项目目录
31.5 明日导航前台页面设计
31.5.1 页面设计概述
31.5.2 控制器的创建
31.5.3 视图中应用到的模板标签
31.5.4 在视图中创建模板文件
31.6 明日导航后台管理设计
31.6.1 后台管理概述
31.6.2 通过系统配置文件存储后台登录数据
31.6.3 后台管理架构解析
31.6.4 ThinkPHP框架中的分页技术
31.6.5 后台管理视图中应用的模板标签
31.6.6 后台登录
31.6.7 后台管理主页
31.6.8 高级类别管理
31.6.9 判断访问用户的权限
31.6.10 操作提示页面
31.7 项目发布
31.8 本章小结
第6篇 项 目 实 战
第32章 博客管理系统
视频讲解:169分钟
32.1 项目描述
32.2 系统分析
32.2.1 需求分析
32.2.2 系统目标
32.2.3 系统功能结构
32.2.4 系统流程图
32.3 软件开发环境
32.4 数据库与数据表的设计
32.4.1 数据库分析
32.4.2 数据库E-R图设计
32.4.3 创建数据库和数据表
32.5 首页设计
32.5.1 首页概述
32.5.2 首页技术分析
32.5.3 首页的实现过程
32.6 用户管理模块设计
32.6.1 用户管理模块概述
32.6.2 用户注册
32.6.3 用户登录
32.6.4 查询用户信息
32.6.5 浏览用户信息
32.7 文章管理模块设计
32.7.1 文章管理模块概述
32.7.2 文章管理模块技术分析
32.7.3 添加文章的实现过程
32.7.4 文章列表的实现过程
32.7.5 查看、评论文章的实现过程
32.7.6 删除文章或评论的实现过程
32.8 图片上传模块设计
32.8.1 图片上传模块概述
32.8.2 图片上传模块技术分析
32.8.3 图片上传的实现过程
32.8.4 图片浏览的实现过程
32.8.5 删除图片的实现过程
32.9 朋友圈模块设计
32.9.1 朋友圈模块概述
32.9.2 朋友圈模块技术分析
32.9.3 查询好友的实现过程
32.10 项目发布
32.10.1 通过个人服务器发布项目
32.10.2 通过租用空间发布项目
32.11 开发常见问题与解决
32.12 本章小结
第33章 应用Smarty模板开发电子商务平台
视频讲解:281分钟
33.1 项目描述
33.2 系统分析
33.2.1 需求分析
33.2.2 编写项目计划书
33.3 系统设计
33.3.1 系统目标
33.3.2 系统功能结构
33.3.3 系统流程图
33.4 系统开发环境
33.5 数据库与数据表的设计
33.5.1 数据库分析
33.5.2 创建数据库和数据表
33.6 搭建系统框架
33.7 公共文件设计
33.7.1 数据库连接文件
33.7.2 Smarty配置文件
33.7.3 XMLHttpRequest对象文件
33.7.4 表单样式文件
33.8 前台首页设计
33.9 登录模块设计
33.9.1 用户注册
33.9.2 用户登录
33.9.3 找回密码
33.10 会员信息模块设计
33.10.1 会员中心
33.10.2 安全退出
33.11 商品展示模块
33.11.1 创建PHP页
33.11.2 创建模板页
33.11.3 JavaScript脚本页面
33.12 购物车模块设计
33.12.1 添加商品
33.12.2 显示购物车
33.12.3 更改商品数量
33.12.4 删除商品
33.12.5 保存购物车
33.13 收银台模块设计
33.13.1 显示订单
33.13.2 填写订单
33.13.3 处理订单
33.13.4 反馈订单
33.13.5 查询订单
33.14 后台首页设计
33.14.1 后台首页布局
33.14.2 DIV+JavaScript+CSS实现树状菜单
33.15 类别管理模块设计
33.15.1 添加类别
33.15.2 查看类别
33.16 订单管理模块设计
33.17 开发的常见问题
33.17.1 解决Ajax的乱码问题
33.17.2 使用JS脚本获取、输出标签内容
33.17.3 使用浮动框架做关联菜单
33.17.4 禁用页面缓存
33.17.5 在新窗口中使用Session
33.17.6 防止站外链接
33.17.7 判断上传文件格式
33.18 网站运行错误分析
33.18.1 数据库导致的错误
33.18.2 Smarty模板的配置错误
33.19 本章小结
附录A PHP编码规则