第1章 Web应用程序设计与开发概述 1
1.1 应用网络模型的演变 1
1.1.1 主机/终端网络模型 1
1.1.2 客户机/服务器(C/S)网络模型 2
1.1.3 浏览器/服务器(B/S)网络模型 3
1.2 Web应用程序的工作原理 4
1.2.1 Web应用程序的发展历史和工作原理 4
1.2.2 Web应用程序的组成及各部分的主要功能 5
1.2.3 网页的分类与布局 6
1.3 Web应用程序的基本开发流程 8
1.3.1 准备Web服务器 8
1.3.2 安装操作系统 8
1.3.3 安装Web服务器应用程序 8
1.3.4 安装和配置脚本语言编辑工具 9
1.3.5 安装和配置后台数据库系统 9
1.3.6 设计数据库结构,创建数据库对象 9
1.3.7 设计Web应用程序中包含的模块和页面 9
1.3.8 设计网页界面 9
1.3.9 设计Web应用程序,编写脚本语言代码 10
1.3.10 测试Web应用程序,通过测试后上线运行 10
1.3.11 开发Web应用程序的项目组组成和分工 10
练习题 11
第2章 搭建PHP服务器和开发环境 12
2.1 安装与配置Apache HTTP Server 12
2.1.1 安装Apache HTTP Server 12
2.1.2 配置Apache HTTP Server 14
2.2 安装与配置PHP 17
2.2.1 安装PHP 17
2.2.2 配置PHP 17
2.3 安装MySQL数据库及其管理工具 19
2.3.1 安装MySQL数据库 19
2.3.2 安装和配置phpMyAdmin 21
2.4 搭建PHP开发环境 23
2.4.1 安装Dreamweaver 8 23
2.4.2 安装EclipsePHP Studio 3 23
练习题 23
第3章 PHP语言基础 25
3.1 初识PHP 25
3.1.1 一个简单的PHP程序 25
3.1.2 PHP语言的基本语法 25
3.1.3 PHP注释 27
3.1.4 初学者的常见问题 27
3.2 常量和变量 28
3.2.1 数据类型 28
3.2.2 常量 29
3.2.3 变量 30
3.2.4 类型转换 32
3.3 运算符和表达式 32
3.3.1 运算符 32
3.3.2 表达式 36
3.4 常用语句 36
3.4.1 赋值语句 36
3.4.2 条件分支语句 36
3.4.3 循环语句 41
3.5 字符串处理 43
3.5.1 字符串常量 43
3.5.2 字符串中的字符 44
3.5.3 获取字符串的长度 44
3.5.4 比较字符串 45
3.5.5 将字符串转换到HTML格式 46
3.5.6 替换字符串 48
3.5.7 URL处理函数 48
3.6 在PHP脚本中使用JavaScript编程 50
3.6.1 JavaScript脚本的使用 50
3.6.2 数据类型和变量 50
3.6.3 弹出警告对话框 51
3.6.4 弹出确认对话框 51
3.6.5 document对象 52
3.6.6 弹出新窗口 54
3.7 开发与调试PHP程序 55
3.7.1 使用Dreamweaver设计网页 55
3.7.2 创建PHP工程 59
3.7.3 创建和编辑PHP文件 60
3.7.4 运行PHP程序 62
3.7.5 调试PHP程序 65
练习题 67
第4章 数组的使用 69
4.1 数组的概念和定义 69
4.1.1 数组的概念 69
4.1.2 定义一维数组 70
4.1.3 定义多维数组 71
4.2 数组元素 72
4.2.1 访问数组元素 72
4.2.2 添加数组元素 72
4.2.3 删除数组元素 73
4.2.4 定位数组元素 74
4.2.5 遍历数组元素 76
4.2.6 确定唯一的数组元素 78
4.3 常用数组操作 79
4.3.1 数组排序 79
4.3.2 填充数组 80
4.3.3 合并数组 80
4.3.4 拆分数组 80
4.3.5 数组统计 81
练习题 82
第5章 接收用户的数据 84
5.1 创建和编辑表单 84
5.1.1 创建表单 84
5.1.2 文本域 86
5.1.3 文本区域 86
5.1.4 单选按钮 87
5.1.5 复选框 87
5.1.6 列表/菜单 88
5.1.7 按钮 89
5.2 在PHP中接收和处理表单数据 89
5.2.1 GET提交方式 89
5.2.2 POST提交方式 91
5.2.3 GET和POST混合提交方式 91
5.2.4 使用JavaScript验证表单的输入 92
5.3 用户身份认证 92
5.3.1 使用表单提交用户身份认证信息 93
5.3.2 使用HTTP认证机制 94
5.4 文件上传 95
5.4.1 使用POST方法上传文件 95
5.4.2 配置文件上传 98
练习题 99
第6章 自定义函数的使用 100
6.1 创建和调用函数 100
6.1.1 创建自定义函数 100
6.1.2 调用函数 101
6.1.3 变量的作用域 101
6.1.4 静态变量 103
6.1.5 变量函数 103
6.2 参数和返回值 104
6.2.1 在函数中传递参数 104
6.2.2 函数的返回值 106
6.3 函数库 107
6.3.1 定义函数库 107
6.3.2 引用函数库 108
练习题 108
第7章 PHP面向对象程序设计 111
7.1 面向对象程序设计思想简介 111
7.2 定义和使用类 112
7.2.1 声明类 112
7.2.2 定义类的对象 114
7.2.3 静态类成员 115
7.2.4 instanceof关键字 116
7.3 类的继承和多态 117
7.3.1 继承 117
7.3.2 抽象类和多态 119
7.4 复制对象 120
7.4.1 通过赋值复制对象 120
7.4.2 通过函数参数复制对象 121
练习题 122
第8章 会话处理 123
8.1 什么是会话处理 123
8.1.1 问题的提出 123
8.1.2 解决方案 124
8.2 Cookie的应用 124
8.2.1 Cookie的工作原理 125
8.2.2 设置Cookie数据 125
8.2.3 读取Cookie数据 126
8.2.4 删除Cookie数据 127
8.2.5 在用户身份验证时使用Cookie 128
8.3 Session的应用 129
8.3.1 Session的工作原理 129
8.3.2 开始会话 130
8.3.3 全局数组$_SESSION 130
8.3.4 删除会话变量 132
8.3.5 销毁会话 133
8.3.6 配置Session 134
练习题 134
第9章 MySQL数据库管理 136
9.1 数据库技术基础 136
9.1.1 数据库的概念 136
9.1.2 关系型数据库管理系统 137
9.1.3 数据模型 138
9.1.4 SQL语言 139
9.2 MySQL数据库管理工具 140
9.2.1 MySQL命令行工具 140
9.2.2 图形化MySQL数据库管理工具phpMyAdmin 143
9.3 创建和维护数据库 145
9.3.1 创建数据库 145
9.3.2 删除数据库 146
9.3.3 备份数据库 147
9.3.4 恢复数据库 148
9.4 表管理 149
9.4.1 表的概念 149
9.4.2 MySQL数据类型 149
9.4.3 创建表 151
9.4.4 编辑和查看表 153
9.4.5 删除表 155
9.5 管理和查询数据 155
9.5.1 插入数据 155
9.5.2 修改数据 157
9.5.3 删除数据 159
9.5.4 在phpMyAdmin中查询数据 160
9.5.5 使用SELECT语句查询数据 162
9.6 视图管理 167
9.6.1 视图概述 167
9.6.2 创建视图 167
9.6.3 修改视图 168
9.6.4 删除视图 169
练习题 169
第10章 在PHP中访问MySQL数据库 171
10.1 MySQL数据库访问函数 171
10.1.1 连接到MySQL数据库 171
10.1.2 执行SQL语句 172
10.1.3 分页显示结果集 176
10.2 设计“网络留言板”实例 179
10.2.1 系统功能分析及数据库设计 179
10.2.2 定义数据库访问类 181
10.2.3 设计留言板的主页 181
10.2.4 显示主题留言 184
10.2.5 添加新留言 187
10.2.6 回复和删除留言 190
10.3 设计“网络投票系统”实例 191
10.3.1 系统功能分析及数据库设计 191
10.3.2 设计投票项目管理模块 192
10.3.3 投票界面设计 197
10.4 设计“网站流量统计系统”实例 201
10.4.1 系统功能分析及数据库设计 201
10.4.2 定义数据库访问类 203
10.4.3 设计函数库 204
10.4.4 设计访问者界面 206
10.4.5 网站信息界面设计 208
10.4.6 最近访问者界面设计 211
10.4.7 按月统计界面设计 211
10.4.8 按年统计界面设计 213
练习题 214
第11章 设计“二手交易市场系统”实例 215
11.1 需求分析与总体设计 215
11.1.1 系统总体设计 215
11.1.2 数据库结构设计与实现 216
11.2 目录结构与通用模块 218
11.2.1 目录结构 218
11.2.2 设计数据库访问类 218
11.3 管理主界面与登录程序设计 221
11.3.1 管理用户登录程序设计 221
11.3.2 设计管理主界面 223
11.3.3 设计admin/Left.php 223
11.4 公告信息管理模块设计 224
11.4.1 设计公告管理页面 224
11.4.2 添加公告信息 226
11.4.3 修改公告信息 228
11.4.4 删除公告信息 229
11.4.5 查看公告信息 230
11.5 商品分类管理模块设计 231
11.5.1 商品分类管理页面 231
11.5.2 添加商品分类 233
11.5.3 修改商品分类 234
11.5.4 删除商品分类 235
11.6 二手商品后台管理 236
11.6.1 商品信息管理页面 236
11.6.2 删除商品信息 237
11.7 管理员用户管理 237
11.7.1 设计用户管理页面 237
11.7.2 删除用户信息 238
11.7.3 设计密码修改页面 239
11.8 系统主界面与登录程序设计 240
11.8.1 设计主界面 240
11.8.2 设计Left.php 243
11.8.3 注册用户登录程序设计 246
11.9 商品信息管理 247
11.9.1 分类查看商品信息 247
11.9.2 添加商品信息 249
11.9.3 商品图片上传 251
11.9.4 查看商品信息 251
10.9.5 查看我的商品列表 252
11.9.6 修改商品信息 254
11.9.7 删除商品信息 255
11.9.8 结束商品信息 255
11.10 个人用户管理模块设计 256
11.10.1 注册新用户 256
11.10.2 退出登录 257
附录A 实验 258
实验1 搭建PHP服务器 258
目的和要求 258
实验准备 258
实验内容 258
实验2 PHP语言基础 261
目的和要求 261
实验准备 261
实验内容 261
实验3 使用Dreamweaver设计网页 264
目的和要求 264
实验准备 264
实验内容 264
实验4 安装和使用EclipsePHP Studio 266
目的和要求 266
实验准备 266
实验内容 266
实验5 使用数组 268
目的和要求 268
实验准备 268
实验内容 268
实验6 创建和编辑表单 269
目的和要求 269
实验准备 270
实验内容 270
实验7 使用自定义函数 271
目的和要求 271
实验准备 272
实验内容 272
实验8 面向对象程序设计 272
目的和要求 272
实验准备 273
实验内容 273
实验9 会话处理 273
目的和要求 273
实验准备 274
实验内容 274
实验10 MySQL数据库管理 274
目的和要求 274
实验准备 275
实验内容 275
实验11 在PHP中访问MySQL数据库 279
目的和要求 279
实验准备 279
实验内容 279
大作业:软件资源下载系统 281
项目1 系统及数据库结构设计 281
项目2 目录结构与通用模块 283
项目3 设计管理员主界面 286
项目4 后台管理模块设计 288
项目5 系统主界面程序设计 303
附录B HTML语言简介 316
B1 基本结构标记 316
B2 设置网页背景和颜色 317
B3 设置字体属性 317
B4 超级链接 318
B5 图像和动画 319
B6 表格 320
B7 使用框架 321
B8 层叠样式表 322
附录C 下载本书所需的软件 325
C1 下载Apache HTTP Server 325
C2 下载PHP 326
C3 下载EclipsePHP Studio 327
C4 下载xdebug插件 328
C5 下载MySQL数据库 329
C6 下载phpMyAdmin 330