《精通PHP+MysQL应用开发》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:王石,杨英娜编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2006
  • ISBN:7115149712
  • 页数:482 页
图书介绍:本书介绍了PHP+MySQL构建Web系统的技术。

第1篇 PHP开发篇 2

第1章 初识PHP 2

1.1 初识PHP 2

1.1.1 走近PHP 2

1.1.2 搭建开发环境 3

1.1.3 HelloWorld 7

1.2 第一个PHP程序——我的书房 8

1.2.1 我的书房之欢迎光临 8

1.2.2 我的书房之显示时间 9

1.2.3 我的书房之临别赠言 9

1.3 在HTML中嵌入PHP 11

1.3.1 把PHP嵌入HTML 11

1.3.2 PHP语句结束符 12

1.3.3 注释程序 12

1.3.4 引用文件 12

1.3.5 PHP与C、Java 13

1.4 ASP、PHP、JSP的比较 13

本章小结 14

第2章 PHP程序设计基础 15

2.1 数据类型 15

2.1.1 理解数据类型 15

2.1.2 字符串 15

2.1.3 数字 16

2.1.4 常用函数 17

2.2 变量 17

2.2.1 理解变量 17

2.2.2 声明变量 17

2.2.3 变量赋值 18

2.2.4 变量替换 18

2.2.5 确定变量类型 19

2.2.6 变量的作用域 19

2.2.7 静态变量 20

2.2.8 使变量名可变 21

2.3 常量 21

2.3.1 定义和使用常量 21

2.3.2 PHP中的预定义常量 22

2.4 运算符 22

2.4.1 算术运算符 23

2.4.2 字符串运算符 23

2.4.3 赋值运算符 23

2.4.4 逻辑运算符 24

2.4.5 位运算符 24

2.4.6 其他运算符 24

2.4.7 运算符的优先级 25

2.5 程序结构 25

2.5.1 使用if语句实现分支 26

2.5.2 使用switch语句实现分支 27

2.5.3 使用while语句实现循环 28

2.5.4 使用for语句实现循环 29

2.5.5 使用break/continue控制循环 30

2.6 函数 30

2.6.1 理解函数的本质 30

2.6.2 定义和调用函数 31

2.6.3 在函数间传递参数 32

2.6.4 使函数名可变 33

2.6.5 使用递归 33

2.7 综合示例 34

本章小结 36

第3章 字符串和数组操作 37

3.1 操作字符串 37

3.1.1 去除空格和其他特殊符号 37

3.1.2 加入和去除反斜杠 38

3.1.3 生成HTML元素 38

3.1.4 分解字符串 40

3.1.5 格式化字符串 40

3.1.6 获取和替换子串 41

3.1.7 定位字符 41

3.1.8 求串长度 42

3.1.9 获取ASCII编码 42

3.1.10 比较字符串 42

3.1.11 大小写转换 43

3.1.12 小结 43

3.2 正则表达式 43

3.2.1 理解正则表达式 44

3.2.2 使用正则表达式 45

3.2.3 构造正则表达式 45

3.2.4 示例1验证URL 48

3.2.5 示例2验证电话号码 48

3.3 规则数组 49

3.3.1 理解数组 49

3.3.2 定义一个数组 50

3.3.3 遍历数组元素 50

3.3.4 获取当前元素 51

3.3.5 改变数组大小 52

3.3.6 数组求交 53

3.3.7 合并两个数组 54

3.3.8 反转一个数组 54

3.3.9 获取多个元素 55

3.3.10 排序数组元素 56

3.3.11 综合示例 56

3.4 相联数组 59

3.4.1 理解相联数组 59

3.4.2 增加数组元素 60

3.4.3 删除数组元素 60

3.4.4 检测键是否存在 60

3.4.5 检测值是否存在 61

3.4.6 小结 61

本章小结 61

第4章 PHP的面向对象编程技术 62

4.1 面向对象技术简介 62

4.1.1 理解面向对象思想 62

4.1.2 理解类和对象 64

4.1.3 用继承来重用代码 64

4.1.4 用多态来统一对外 65

4.1.5 是否选择面向对象 65

4.2 在PHP中使用类 66

4.2.1 创建类和对象 66

4.2.2 使用构造函数 68

4.2.3 继承已有的类 69

4.2.4 重载新的方法 70

4.2.5 访问父类中的方法 71

4.3 PHP5的面向对象新特征 72

4.3.1 控制访问权限 72

4.3.2 静态属性和方法 74

4.3.3 使用__construct()和__destruct() 76

4.3.4 使用__clone()克隆对象 77

4.3.5 使用抽象方法和抽象类 78

4.3.6 使用__call()处理调用错误 80

4.3.7 使用__autoload()自动加载类 81

4.3.8 把对象串行化 81

本章小结 83

第5章 PHP的MySQL数据库编程 84

5.1 Web系统的体系结构 84

5.2 连接和关闭数据库 85

5.2.1 连接数据库 85

5.2.2 关闭数据库连接 86

5.3 数据库级操作 86

5.3.1 创建、选择、删除数据库 87

5.3.2 示例“我的书房”之库级操作 87

5.4 增删改数据 88

5.4.1 提交SQL语句 88

5.4.2 示例“我的书房”之增删改图书 89

5.5 查询数据 91

5.5.1 使用mysql_result()获取查询记录集 91

5.5.2 使用mysql fetch row()以数组的形式返回查询结果 92

5.5.3 使用mysql_fetch_array获取当前行数据 94

5.5.4 使用mysql_fetch_object()以对象的形式返回查询结果 95

5.5.5 综合比较 96

5.6 获取数据库信息 96

5.6.1 获取数据库基本信息 96

5.6.2 获取数据表属性信息 98

5.6.3 获取查询结果数目 99

5.7 其他常用操作 100

5.7.1 处理错误信息 100

5.7.2 释放内存 101

5.7.3 切换用户 102

5.7.4 获取插入记录自动标识 102

5.8 综合示例 102

5.8.1 系统概述 102

5.8.2 设置环境变量 103

5.8.3 数据库类 103

5.8.4 图书类 105

5.8.5 主页面 107

5.8.6 添加记录 109

5.8.7 修改记录 110

5.8.8 删除记录 110

5.8.9 显示查询记录 111

本章小结 112

第6章 PHP的文件系统 113

6.1 访问文件 113

6.1.1 打开和关闭文件 113

6.1.2 读取文件内容 114

6.1.3 写入文件内容 116

6.1.4 检测文件是否存在 116

6.1.5 检测文件访问权限 116

6.1.6 将文件内容赋值给数组 117

6.1.7 复制文件 117

6.2 操作目录 118

6.2.1 打开和关闭目录 118

6.2.2 读取目录 118

6.2.3 改变当前目录 119

6.2.4 获得脚本文件目录 119

6.2.5 使用目录对象 120

6.3 综合示例 120

63.1 我的文件管理器 120

6.3.2 我的文件查看器 123

本章小结 124

第7章 构建PHP动态网页 125

7.1 与表单(FORM)交互 125

7.1.1 认识表单 125

7.1.2 获取FORM信息 127

7.1.3 示例 127

7.2 管理Session 128

7.2.1 认识Session 128

7.2.2 注册Session变量 128

7.2.3 使用Session变量 129

7.2.4 注销Session变量 129

7.2.5 示例验证用户身份 130

7.3 页面跳转 130

7.3.1 使用header()函数 130

7.3.2 使用文件操作函数 131

7.4 HTML模板 132

7.5 管理图形图像 133

7.5.1 PHP支持的图像类型 133

7.5.2 管理画布 133

7.5.3 获得图像大小 135

7.5.4 向图像中加入文字 136

7.5.5 画点 136

7.5.6 画几何图形 137

7.5.7 填充几何图形 138

7.6 使用时间和日期函数 139

7.6.1 获取日期和时间 139

7.6.2 格式化输出日期和时间 141

7.7 处理URL字符串 142

7.7.1 分解URL 142

7.7.2 编码和解码URL 143

本章小结 144

第8章 PHP的网络编程 145

8.1 网络通信 145

8.1.1 使用POST上传文件 145

8.1.2 HTTP认证 147

8.1.3 Socket通信 148

8.2 电子邮件 149

8.2.1 打开一个邮箱 149

8.2.2 发送电子邮件 150

8.2.3 获取附件 151

8.2.4 综合示例 152

8.3 使用XML 155

8.3.1 理解XML 155

8.3.2 利用数组生成XML 156

8.3.3 使用DOM创建XML文档 158

8.3.4 使用DOM查询XML数据 160

8.3.5 使用DOM删除XML数据 160

8.3.6 使用DOM修改XML数据 161

8.3.7 综合示例 161

本章小结 166

第9章 PHP程序调试 167

9.1 基本调试策略 167

9.1.1 使用错误报告 167

9.1.2 使用die和print语句 168

9.2 使用Eclipse调试程序 170

9.2.1 了解PHPEclipse 170

9.2.2 使用PHPEclipse调试语法错误 173

9.2.3 使用PHPEclipse调试逻辑错误 173

本章小结 175

第2篇 MySQL数据库管理篇 178

第10章 初识MySQL 178

10.1 关系数据库基础 178

10.1.1 了解关系数据库 178

10.1.2 一个示例 179

10.1.3 数据库的功能 180

10.2 MySQL概述 180

10.2.1 了解MySQL 181

10.2.2 使用MySQL 181

10.3 创建第一个MySQL数据库 182

10.3.1 连接MySQL服务器 182

10.3.2 建立student_course数据库 182

10.3.3 建立表 183

10.3.4 添加数据 184

10.3.5 查询数据 185

10.3.6 修改数据 185

10.3.7 删除数据 185

10.3.8 数据的位置 186

10.4 MySQL的数据类型 187

10.4.1 数值型 187

10.4.2 字符串型 188

10.4.3 日期和时间类型 188

10.4.4 NULL值 189

本章小结 189

第11章 数据库设计理论 190

11.1 数据库设计概述 190

11.1.1 数据库设计的定义 190

11.1.2 数据库设计的目标 191

11.1.3 数据库的体系结构 191

11.1.4 数据库设计的步骤 192

11.2 需求分析 194

11.2.1 需求分析的目标 194

11.2.2 收集需求信息 194

11.2.3 分析整理需求 194

11.2.4 评审 195

11.3 概念设计 195

11.3.1 理解E-R图数据模型 195

11.3.2 用E-R图为现实建模 196

11.3.3 示例 198

11.4 逻辑设计 201

11.4.1 逻辑设计步骤 201

11.4.2 理解关系的概念 202

11.4.3 约束一个关系 203

11.4.4 关系中的异常 203

11.4.5 规范化关系 204

11.5 设计说明书示例 206

本章小结 208

第12章 管理MySQL 209

12.1 概述 209

12.1.1 MySQL的构成 209

12.1.2 管理概述 210

12.1.3 保障数据安全 211

12.2 使用客户机 211

12.2.1 使用mysql客户机 211

12.2.2 使用mysqladmin客户机 212

12.2.3 使用mysqldump客户机 214

12.3 MySQL服务器的启动和关闭 214

12.3.1 启动服务器 214

12.3.2 连接服务器 215

12.3.3 关闭服务器 215

12.4 用户和权限管理 216

12.4.1 创建新用户和授权 216

12.4.2 控制权限传递 218

12.4.3 取消权限和删除用户 218

12.4.4 了解MySQL的用户管理表 219

12.5 日志管理 219

12.5.1 生成日志文件 219

12.5.2 循环利用日志文件 220

12.6 备份数据库 220

12.6.1 使用mysqldump备份 220

12.6.2 使用直接拷贝数据文件方式 222

12.6.3 两种方式的比较 223

12.7 恢复数据库 223

12.7.1 恢复整个数据库 223

12.7.2 恢复单个表 224

本章小结 224

第13章 使用MySQL管理数据 225

13.1 SQL基础 225

13.1.1 SQL简介 225

13.1.2 了解SQL语句 226

13.1.3 在SQL中加注释 226

13.1.4 MySQL中的SQL特征 227

13.2 创建、删除和选择数据库 227

13.2.1 创建数据库(CREATE DATABASE) 227

13.2.2 删除数据库(DROP DATABASE) 228

13.2.3 选择数据库(USE) 228

13.3 创建、修改、删除数据表 229

13.3.1 创建表(CREATE TABLE) 229

13.3.2 创建不存在的表(IF NOT EXISTS) 231

13.3.3 创建临时表(TEMPORARY) 231

13.3.4 利用SELECT的结果创建表 232

13.3.5 修改表(ALTER TABLE) 232

13.3.6 删除表(DROP TABLE) 233

13.4 创建和删除索引 233

13.4.1 使用索引优化查询 234

13.4.2 创建索引 235

13.4.3 删除索引 236

13.5 增删改数据 236

13.5.1 使用INSERT增加记录 236

13.5.2 使用LOAD DATA批量增加记录 238

13.5.3 使用mysqlimport批量增加记录 238

13.5.4 修改记录(UPDATE) 238

13.5.5 删除记录(DELETE) 238

13.6 查询数据 239

13.6.1 选择列 239

13.6.2 选择数据表 240

13.6.3 使用WHERE选择记录 241

13.6.4 使用GROUP BY对结果分组 243

13.6.5 使用DISTINCT对结果去重 244

13.6.6 使用ORDER BY对结果排序 244

13.6.7 使用CONCAT联合多列 245

13.6.8 使用LIMIT限定结果行数 246

13.6.9 使用函数和表达式 246

13.7 查询数据库、表信息 247

13.8 MySQL不支持的功能 248

本章小结 250

第14章 查询优化 251

14.1 索引技术 251

14.1.1 了解索引机制 251

14.1.2 选择索引列 253

14.1.3 索引的缺点 255

14.1.4 分析索引效率 255

14.2 选择列类型 256

14.2.1 使用较短定长列 257

14.2.2 使用NOT NULL和ENUM 257

14.2.3 使用OPTIMIZE TABLE 257

14.2.4 避免检索较大的BLOB或TEXT值 258

14.2.5 使用PROCEDURE ANALYSE() 258

14.3 优化SQL语句 259

14.3.1 避免对数据的顺序存取 259

14.3.2 避免通配符 259

14.3.3 比较两个列 260

14.3.4 使索引列独立 260

14.3.5 使用临时表 261

14.3.6 综合示例 262

14.4 系统优化 263

14.4.1 增加服务器缓存 264

14.4.2 使用查询缓存 265

14.4.3 调度与锁定数据 266

14.4.4 调整硬件 267

本章小结 268

第15章 MySQL数据安全性 269

15.1 数据文件安全性 269

15.1.1 保护的文件内容 270

15.1.2 保护Windows文件 270

15.1.3 保护UNIX文件 271

15.2 网络访问安全性 273

15.2.1 通过授权表确认访客 273

15.2.2 检查访问用户合法性 274

15.2.3 控制库级访问 276

15.2.4 控制表级访问 277

15.2.5 控制列级访问 278

15.2.6 使用授权表示例 278

15.3 数据库维护 279

15.3.1 检查和维护数据库表 279

15.3.2 使用myisamchk和isamchk 280

15.3.3 检查表 280

15.3.4 修复表 281

15.3.5 快速运行myisamchk和isamchk 283

15.4 预防性检查 283

15.4.1 建立预防性维护时间表 284

15.4.2 在Linux下定期检查表 284

15.4.3 在Windows下定期检查表 285

本章小结 286

第16章 图形化管理MySQL 287

16.1 使用phpMyAdmin 287

16.1.1 Linux系统的安装配置 288

16.1.2 Windows系统的安装配置 288

16.1.3 库级操作 289

16.1.4 表级操作 290

16.1.5 增删改数据 292

16.1.6 查询数据 292

16.1.7 导出数据 293

16.2 其他图形管理工具 295

16.2.1 MySQL Control Center 295

16.2.2 MySQLGUI 298

16.2.3 MySQL Administrator+MySQL Query Browser 299

本章小结 300

第3篇 典型模块设计篇 302

第17章 简易聊天室 302

17.1 系统目标 302

17.2 关键技术 302

17.2.1 自动刷新页面 302

17.2.2 传递用户名 303

17.2.3 显示最新发言 303

17.3 数据库设计 304

17.3.1 设计数据库 304

17.3.2 实现数据库 305

17.4 系统实现 305

17.4.1 参数配置文件 305

17.4.2 登录页面 306

17.4.3 聊天室主页面 306

17.4.4 显示发言页面 307

17.4.5 发言页面 309

本章小结 310

第18章 支持用户管理的聊天室 311

18.1 系统目标 311

18.2 关键技术 311

18.2.1 自动注册 312

18.2.2 检查表单 312

18.2.3 选择字体颜色 313

18.2.4 显示字体颜色 314

18.2.5 记录用户状态 314

18.3 数据库设计 314

18.3.1 设计数据库 314

18.3.2 实现数据库 315

18.4 系统实现 316

18.4.1 用户登录 316

18.4.2 检查用户 318

18.4.3 重新登录 319

18.4.4 聊天室主页面 321

18.4.5 用户发言 322

18.4.6 显示发言 325

18.4.7 显示在线用户 326

18.4.8 离开系统 327

本章小结 328

第19章 支持信息加密的用户验证 329

19.1 加密技术简介 329

19.1.1 加密的功能 329

19.1.2 常用加密方法 330

19.2 XOR运算加密算法 330

19.2.1 XOR算法原理 331

19.2.2 XOR算法实现 331

19.2.3 用XOR算法实现身份验证 332

19.2.4 自动生成密钥 334

19.3 用crypt()实现用户身份验证 336

19.3.1 了解crypt() 336

19.3.2 用crypt()实现用户身份验证 337

19.4 MD5散列加密算法 338

19.4.1 了解MD5 338

19.4.2 使用MD5实现用户身份验证 339

19.4.3 还原明文 340

本章小结 341

第20章 支持分页显示的拍卖行 343

20.1 系统目标 343

20.2 关键技术 343

20.2.1 分页显示 344

20.2.2 页面导航 346

20.2.3 上传图片 347

20.2.4 显示图片 348

20.2.5 用户竞标 348

20.3 数据库设计 348

20.3.1 设计数据库 349

20.3.2 实现数据库 349

20.4 系统实现 350

20.4.1 系统菜单 350

20.4.2 配置文件 351

20.4.3 分页显示类 351

20.4.4 用户登录 354

20.4.5 检查用户 356

20.4.6 添加商品 358

20.4.7 上传图片 361

20.4.8 浏览商品 364

20.4.9 显示商品详单 370

20.4.10 出价竞标 374

本章小结 375

第21章 支持站内搜索的留言本 376

21.1 系统目标 376

21.2 关键技术 377

21.2.1 组织留言内容 377

21.2.2 分页显示留言信息 378

21.2.3 传递留言ID 379

21.2.4 留言回复 379

21.2.5 全文搜索留言信息 380

21.2.6 独立搜索模块 381

21.3 数据库设计 381

21.3.1 设计数据库 381

21.3.2 实现数据库 382

21.4 系统实现 383

21.4.1 添加留言页面 383

21.4.2 站内搜索单元 387

21.4.3 显示查询结果 388

21.4.4 修改留言页面 392

21.4.5 回复留言模块 394

21.4.6 查看留言回复 397

21.4.7 删除留言模块 399

21.4.8 系统扩展 400

本章小结 400

第4篇 综合案例篇 402

第22章 开发大型项目的策略 402

22.1 开发规范标准化 402

22.1.1 规范化命名 402

22.1.2 规范化大括号使用 405

22.1.3 规范化小括号使用 406

22.1.4 规范化注释 407

22.1.5 管理文档 408

22.1.6 实施标准 409

22.2 Web系统的逻辑结构 409

22.2.1 大型Web系统的结构 409

22.2.2 API化服务器端代码 410

22.2.3 使用模板 411

本章小结 412

第23章 电子商务系统 413

23.1 需求分析 413

23.1.1 电子商务简介 413

23.1.2 用户行为分析 413

23.1.3 系统目标 414

23.2 系统预览 415

23.2.1 浏览、查询图书 415

23.2.2 购买图书 415

23.2.3 注册、登录系统 416

23.2.4 查看我的购物车 416

23.2.5 生成我的购物订单 416

23.3 系统架构 417

23.3.1 总体设计 417

23.3.2 系统体系结构 418

23.4 数据库设计 418

23.5 数据访问层 420

23.5.1 数据库配置文件 420

23.5.2 DataBase的属性 421

23.5.3 实现ExecuteSql()方法 421

23.5.4 实现Query()方法 421

23.6 业务逻辑层 421

23.6.1 图书类Book 421

23.6.2 购物车类Cart 423

23.6.3 会员类User 425

23.6.4 订单类Order 428

23.6.5 订单详细信息类OrderDetail 430

23.7 页面显示层 431

23.7.1 分页显示类 431

23.7.2 图书浏览查询 433

23.7.3 购物车管理 436

23.7.4 会员管理 440

23.7.5 订单管理 444

本章小结 448

第24章 办公自动化系统 450

24.1 需求分析 450

24.1.1 办公自动化简介 450

24.1.2 用户行为分析 450

24.1.3 系统目标 451

24.2 系统预览 452

24.2.1 进入办公平台 452

24.2.2 撰写、上报公文 453

24.2.3 审批公文 453

24.2.4 发布、查看公告 453

24.2.5 查看系统日志 454

24.3 系统架构 454

24.3.1 总体设计 455

24.3.2 系统体系结构 455

24.4 数据库设计 456

24.5 数据访问层 458

24.6 业务逻辑层 458

24.6.1 用户类User 459

24.6.2 普通员工用户类UserEmployee 460

24.6.3 管理者用户类UserManager 460

24.6.4 角色类Role 461

24.6.5 公文类File 462

24.6.6 公文状态类Status 466

24.6.7 公文类属类Category 466

24.6.8 公共消息类PublicMessage 466

24.6.9 日志类Log 469

24.7 页面显示层 470

24.7.1 分页显示类 470

24.7.2 系统首页 470

24.7.3 用户管理 472

24.7.4 个人办公 475

24.7.5 公告管理 480

24.7.6 日志管理 480

24.7.7 退出系统 481

本章小结 482