第1章 走进Web世界 2
1.1开发工具准备 2
1.1.1Dreamweaver CS3简介 2
1.1.2Dreamweaver CS3新增的功能 3
1.2准备Web应用运行环境 3
1.3开发一个Web应用——在线购物系统 5
1.3.1建立数据库 6
1.3.2开发准备工作 9
1.3.3完成登录与注册 10
1.3.4完成商品的增加以及图片的上传 17
1.3.5商品显示后台处理 31
1.3.6商品前台显示 36
1.3.7让导航起作用 39
1.3.8让商品图片动起来 40
1.3.9开始下订单了 43
1.3.10让订单生效吧 49
1.3.11完成最后的工作 53
1.4小结 57
第2章 Dreamweaver CS3基础 60
2.1体验一下Dreamweaver CS3 60
2.2熟悉Dreamweaver CS3工作环境 62
2.2.1Dreamweaver CS3工作界面 62
2.2.2Dreamweaver CS3工具 64
2.2.3Dreamweaver CS3面板 68
2.3Dreamweaver CS3站点的创建与设置 68
2.3.1本地站点与互联网远程站点 69
2.3.2创建与设置Dreamweaver CS3站点 69
2.4Dreamweaver CS3常用操作 72
2.4.1设置页面属性 72
2.4.2在Dreamweaver CS3中操作表格 73
2.4.3在网页中插入图片和多媒体 74
2.4.4在网页中创建表单 74
2.4.5使用Dreamweaver CS3快速增加JavaScript行为功能 76
2.4.6在Dreamweaver CS3中文本与超链接的操作 76
2.4.7使用Dreamweaver CS3快速增加样式 77
2.5小结 77
第3章 Web站点基础 78
3.1HTML/XHTML基础 78
3.1.1HTML基础结构 78
3.1.2HTML常用标记 80
3.1.3.XHTML1.0简介 91
3.2CSS基础 96
3.2.1CSS简介 96
3.2.2CSS语法 98
3.2.3CSS类 100
3.2.4CSS属性 103
3.3XML基础 106
3.3.1编写XML文档 107
3.3.2声明XML标签 108
3.3.3解析XML内容 110
3.4使用CSS+DIV进行页面布局 111
3.4.1准备工作 111
3.4.2构建主要框架 113
3.4.3构建附加框架 115
3.4.4文本样式设置 117
3.4.5充实内容 118
3.5使用和设计Dreamweaver CS3模板 119
3.6小结 120
第4章 PHP基础 121
4.1PHP简介 121
4.1.1PHP历史 121
4.1.2PHP的原理 122
4.1.3PHP的特性 122
4.1.4PHP的发展前景 123
4.2一个PHP程序 125
4.3类型定义和转换 128
4.3.1标量类型 129
4.3.2数据类型转换规则 131
4.3.3数据类型转换方法 132
4.3.4自动类型转换 134
4.4变量和常量 135
4.4.1变量 135
4.4.2常量 138
4.5表达式与运算符 140
4.5.1表达式 140
4.5.2运算符简介 141
4.5.3运算符分类详解 141
4.5.4运算符的优先级 148
4.5.5当年投资方案评测程序回顾 150
4.6程序结构 151
4.6.1程序块结构 152
4.6.2选择和分支结构 152
4.6.3循环结构 157
4.6.4PHP语言使用技巧 160
4.6.5五年投资方案评测程序回顾 162
4.7自定义函数 164
4.7.1自定义函数的方法 165
4.7.2参数与返回值 168
4.7.3函数中变量的作用域 172
4.7.4通过文件引用来调用函数 175
4.7.5使用函数和包含文件实现五年投资方案评测程序回顾 179
4.8小结 180
第5章 PHP数据控制 181
5.1数组 181
5.1.1数组创建 182
5.1.2数组访问 184
5.1.3多维数组 187
5.1.4foreach循环 188
5.1.5基本数组函数 190
5.2字符串操作 197
5.2.1字符串输出 197
5.2.2字符串格式的修改 199
5.2.3字符串的比较 202
5.2.4子字符串操作 203
5.2.5字符串操作程序回顾 206
5.3正则表达式 207
5.3.1正则表达式简介 208
5.3.2正则表达式组成符号 208
5.3.3正则表达式匹配规则 210
5.3.4正则表达式函数 212
5.4小结 215
第6章 面向对象设计的PHP应用 216
6.1了解面向对象编程思想 216
6.1.1什么是面向对象 216
6.1.2为什么需要面向对象思想 217
6.2PHP面向对象入门 218
6.2.1类与对象 218
6.2.2访问限定 221
6.2.3将类文件独立出来 223
6.2.4静态成员变量与成员函数 224
6.2.5构造函数与析构函数 226
6.2.6函数重载 227
6.2.7People类回顾 228
6.3PHP面向对象 230
6.3.1PHP中的继承 230
6.3.2PHP中类之间的组合应用 233
6.3.3抽象类与接口 234
6.3.4多态性 238
6.3.5对象的序列化 240
6.4小结 242
第7章 PHP预定义变量 243
7.1掌握PHP预定义变量 243
7.1.1服务器变量:$_SERVER 243
7.1.2预定义变量:$_GET和$_POST变量 250
7.1.3HTTP文件上传变量:$_FILES 252
7.1.4HTTP Cookies变量:$_COOKIE 258
7.1.5Request变量:$_REQUEST 262
7.1.6Session变量:$_SESSION 263
7.2PHP预定义变量综合应用 266
7.2.1修改引入文件 267
7.2.2修改登录部分 269
7.2.3修改图片上传以及新建图片显示界面 271
7.2.4运行程序查看成果 272
7.3小结 273
第8章 MySQL基础 274
8.1数据库基础 274
8.1.1数据库的发展历史 274
8.1.2数据库的基本概念 276
8.1.3数据库设计 281
8.2在MySQL中管理数据库与表 283
8.2.1MySQL命令解释器 283
8.2.2在MySQL中创建数据库和表 285
8.2.3在MySQL中删除数据库和表 287
8.2.4在PHP中分配用户和权限 288
8.3数据的增、删、改、查 293
8.3.1完整性约束 293
8.3.2数据的增、删、改 294
8.3.3数据的查询 298
8.4PHP与MySQL 302
8.4.1PHP连接MySQL数据库 302
8.4.2在PHP程序中处理MySQL服务器的错误 305
8.4.3引入文件封装访问驱动 307
8.5小结 308
第9章 PHP中的异常处理 309
9.1理解PHP异常处理 309
9.2PHP异常处理方法 310
9.2.1异常处理类 310
9.2.2异常抛出 312
9.2.3异常捕获 313
9.3PHP异常处理技巧 315
9.3.1对于多种异常情况的处理 315
9.3.2选择异常处理的时机 317
9.4小结 319
第10章 开发基于PHP+MySQL的记事本 320
10.1功能需求分析与设计 320
10.1.1数据库设计 320
10.1.2系统设计 322
10.2系统实现 324
10.2.1数据操作类的实现 324
10.2.2页面基类以及首页和登录、注册页面的实现 331
10.2.3事件信息页面以及类的实现 343
10.3小结 357
第11章 JavaScript基础 360
11.1JavaScript语言基础 360
11.1.1JavaScript简介 360
11.1.2JavaScript基本元素 362
11.1.3JavaScript程序结构 369
11.2JavaScript与HTML/XHTML 374
11.2.1浏览器对象 374
11.2.2表单验证 375
11.2.3Cookie处理 379
11.2.4窗口控制 383
11.3JavaScript与CSS 385
11.3.1通过style对象改变节点的CSS 385
11.3.2使用className属性指定节点的样式 386
11.3.3使用JavaScript控制CSS滤镜 387
11.4JavaScript与DOM 388
11.4.1DOM基础 389
11.4.2JavaScript对DOM操作 391
11.4.3JavaScript对DOM的事件处理 396
11.4.4JavaScript使用DOM技术操作XML文档 398
11.5小结 401
第12章 AJAX基础 402
12.1AJAX概述 402
12.1.1AJAX的产生 402
12.1.2AJAX的理解 403
12.1.3AJAX的适用范围 405
12.1.4AJAX简单示例 406
12.2AJAX关键技术 407
12.2.1XMLHttpRequest对象简介 407
12.2.2XMLHttpRequest对象的属性和方法 408
12.2.3XMLHttpRequest发送请求 410
12.2.4XMLHttpRequest获取请求 413
12.3AJAX开发模式 417
12.3.1重构与设计模式 418
12.3.2几种设计模式介绍 420
12.3.3MVC模式 423
12.4小结 425
第13章 PHP与AJAX 426
13.1将AJAX应用于PHP 426
13.1.1理解AJAX服务器端 426
13.1.2AJAX与服务器的交互方式 429
13.1.3访问PHP服务器 431
13.2AJAX安全与性能 434
13.2.1AJAX程序安全 434
13.2.2传送数据保护 436
13.2.3AJAX程序性能优化 438
13.3PHP+AJAX实现搜索提示 441
13.3.1基本原理分析 441
13.3.2客户端代码 442
13.3.3服务器端代码 447
13.3.4数据库设计 448
13.4体验AJAX带来的改变 450
13.5小结 451
第14章 PHP开发利器PEAR 454
14.1使用PEAR::HTML_AJAX实现AJAX 454
14.1.1PEAR::HTML_AJAX简介 454
14.1.2PEAR::HTML_AJAX无刷新局部更改 457
14.1.3PEAR::HTML_AJAX无刷新提交表单 460
14.1.4PEAR::HTML_AJAX与spry 463
14.2使用PEAR::HTML_Template_IT实现模板 466
14.2.1PEAR::HTML_Template_IT简介 466
14.2.2PEAR::HTML_Template_IT嵌套表格输出 468
14.2.3PEAR::HTML_Template_IT动态载入页面 469
14.2.4PEAR::HTML_Template_IT输出XML 470
14.3使用PEAR::Pager实现分页 471
14.3.1PEAR::Pager简介 471
14.3.2PEAR::Pager实现分页 473
14.3.3PEAR::Pager与AJAX结合 476
14.4使用PEAR::DB_DataObject实现ORM 477
14.4.1PEAR::DB_DataObject简介 477
14.4.2PEAR::DB_DataObject配置 478
14.4.3PEAR::DB_DataObject增、删、改数据 481
14.4.4PEAR::DB_DataObject查询数据 483
14.5使用PEAR::HTML_QuickForm实现表单 486
14.5.1PEAR::HTML_QuickForm简介 486
14.5.2PEAR::HTML_QuickForm创建表单 487
14.5.3PEAR::HTML_QuickForm与HTML_Template_IT结合使用 488
14.5.4PEAR::HTML_QuickForm与DB_DataObject结合使用 491
14.6小结 492
第15章 在线相册的分析与设计 493
15.1需求分析与实现技术选择 493
15.1.1相册需求 493
15.1.2实现技术选择以及初步构想 494
15.1.3数据库实现 495
15.2系统部分设计 497
15.2.1整体设计思路 497
15.2.2首页显示流程设计 498
15.2.3用户登录流程设计 500
15.2.4系统设置流程设计 501
15.2.5照片管理流程设计 502
15.2.6照片显示流程设计 503
15.3主要类设计 503
15.3.1JavaScript类设计 504
15.3.2View层类设计 505
15.3.3Controller层类设计 506
15.3.4Model层类设计 507
15.4小结 507
第16章 在线相册具体实现 508
16.1Model层实现 508
16.1.1PEAR::DB_DataObject配置 508
16.1.2Model层基类实现 509
16.1.3Model层其他类实现 510
16.2Controller层实现 512
16.2.1AdminManager类实现 512
16.2.2SkinManager类实现 513
16.2.3SystemManager类实现 514
16.2.4PhotosManager类实现 515
16.3View层的实现 517
16.3.1View层基类的实现 517
16.3.2MyAJAX.php与Server.php以及涉及类的实现 518
16.3.3首页index.php的实现 521
16.3.4Photos.js的实现 529
16.3.5AdminLogin.php的实现 536
16.3.6UpSystem.php的实现 538
16.3.7照片上传与增加相册分类的实现 539
16.3.8UpPhotosInfo.php的实现 542
16.4小结 543
附录A PHP环境的配置 545
附录B PEAR包的安装 564
附录C PHP框架介绍 570
附录D 调试工具介绍 575
附录E 本书源代码附加说明 592