《PHP for Flash FMS动态网站开发手札》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:张亚飞编著
  • 出 版 社:北京:化学工业出版社
  • 出版年份:2010
  • ISBN:9787122089915
  • 页数:698 页
图书介绍:本书介绍了Flash影片应用程序与PHP结合的基本原理等等。

第一篇PHP for Flash入门和基本原理篇 2

第1章 开发和运行环境的安装与配置 2

1.1安装和配置PHP应用程序服务器 2

1.1.1配置环境变量 3

1.1.2配置支持模块 4

1.2安装和配置Web服务器 5

1.3安装和使用数据库 8

1.3.1安装和配置MySQL数据库服务器 8

1.3.2配置和使用phpMyAdmin管理MySQL 11

1.3.3配置PHP使用PDO 16

1.4安装和配置开发环境 16

1.4.1正确认识ActionScript开发 17

1.4.2正确认识ActionScript的开发工具 18

1.4.3正确认识ActionScript运行环境和开发语言 19

1.4.4关于标准和实现 20

第2章PHP for Flash动态网站开发基础入门 21

2.1 PHP网络应用程序的工作原理 21

2.1.1 Web应用程序的基本工作原理 21

2.1.2 PHP网络应用程序的基本工作原理 23

2.1.3怎样通过Web服务器请求网页 24

2.1.4浏览器怎样从服务器接收和发送数据 25

2.2 Flash影片应用程序接收和发送数据 27

2.2.1创建Flash影片应用程序作为表单 27

2.2.2创建和配置PHP网页 30

2.2.3测试应用程序 31

2.2.4使用Flash表单要点解析 32

2.3如何访问数据库 33

2.3.1创建和配置PHP网页 34

2.3.2创建Flash影片应用程序 35

2.3.3测试应用程序 38

第3章PHP for Flash基本原理和经典应用——Flash的HTTP请求和响应 39

3.1了解请求和响应的基本过程 39

3.1.1请求和响应的基本过程 39

3.1.2 Flash的请求和响应 42

3.1.3了解URI.URL和URN 43

3.2 HTTP协议基础 45

3.2.1 HTTP消息的内容 45

3.2.2 HTTP请求的内容 46

3.2.3 HTTP响应的内容 47

3.2.4 HTTP消息报头的内容 48

3.3在Flash影片中构造HTTP请求 50

3.3.1定义请求地址 51

3.3.2定义请求方法 52

3.3.3添加请求报头 53

3.3.4定义请求内容和MIME内容类型 54

3.4发送HTTP请求和处理响应 56

3.4.1使用navigateToURL函数发送HTTP请求 56

3.4.2使用sendToURL函数发送HTTP请求 58

3.4.3使用URLLoader.load方法发送请求和处理响应 58

3.4.4使用Loader.load方法发送请求和处理响应 61

3.4.5使用URLStream.load方法发送请求和处理响应 63

第4章 PHP for Flash基本原理和经典应用——使用PHP处理请求和做出响应 66

4.1使用PHP接收Flash表单数据 66

4.1.1 POST方法和GET方法 66

4.1.2接收POST方法提交的表单数据 68

4.1.3接收GET方法提交的表单数据 69

4.1.4注意GET方法的安全问题 69

4.1.5遍历表单变量 70

4.1.6其他处理表单的方法 71

4.1.7关于register_globals及其安全问题 72

4.2使用PHP对Flash请求做出响应 73

4.2.1返回消息正文给Flash 73

4.2.2返回响应状态行和响应报头给客户端 73

4.2.3重定向 77

4.2.4设置响应内容的格式和类型 78

4.2.5在Flash中处理响应状态行 79

4.2.6遍历响应报头 79

4.3处理客户端网页缓存 80

4.3.1使用HTTP报头控制客户端缓存 81

4.3.2控制代理服务器缓存网页 81

4.3.3控制浏览器缓存网页 82

4.3.4使用URL参数避免浏览器缓存网页 83

4.4使用PHP处理请求报头 83

第5章PHP for Flash用户安全验证和状态管理 87

5.1理解Session和Cookie 88

5.1.1什么是Cookie 88

5.1.2什么是Session 90

5.1.3了解Cookie的格式和内容 90

5.1.4 Session和Cookie的使用环境 91

5.2使用Cookie完成状态管理 92

5.2.1怎样传送和使用Cookie 93

5.2.2 Flash怎样传送和使用Cookie 94

5.2.3创建Cookie 95

5.2.4访问Cookie 96

5.2.5设置Cookie路径 97

5.2.6检查是否接受Cookie 98

5.3使用Session完成状态管理 101

5.3.1激活PHP网页中的Session支持 101

5.3.2怎样传送和使用Session 102

5.3.3创建和管理Session 105

5.3.4启动和结束Session 108

5.3.5使用URL参数传递Session ID 110

5.4其他维护状态的方法 111

5.5 Flash影片应用程序的状态维护 112

5.5.1 Flash兼具B/S和C/S的特点 112

5.5.2使用SharedObject作为Cookie 114

第6章 使用XML交换数据 118

6.1在PHP应用程序中处理XML文档的方法 118

6.1.1了解PHP XML文档对象 118

6.1.2 DOM基于节点的浏览 120

6.1.3关于PHP DOM 120

6.2创建和保存XML文档对象 121

6.2.1使用字符串创建一个新的XML文档对象 121

6.2.2使用文件创建一个新的XML文档对象 122

6.2.3使用版本号和编码创建一个空的XML文档对象 122

6.2.4保存和写出一个XML文档对象 123

6.3使用XML对象数据内容 123

6.3.1遍历节点树 124

6.3.2使用XPath从XML文档中提取数据 124

6.4在Flash和PHP之间传递XML数据 125

6.4.1在Flash影片应用程序中直接使用DOM处理XML 125

6.4.2使用Flash与PHP使用XML交换数据——一个用户验证程序 127

6.5在Flash中使用E4X 132

6.5.1 Flash实现E4X的类 132

6.5.2创建XML对象和XMLList对象 133

6.5.3访问XML结构 135

6.5.4修改XML结构 140

6.5.5使用E4X实现用户验证程序 141

第二篇 使用Flash Remoting加速应用程序开发 144

第7章 使用Zend Amf——开源的AMF-RPC实现 144

7.1 Flash Remoting基础和AMF-RPC基础 144

7.2安装和配置Zend Amf 146

7.2.1配置Zend Amf 147

7.2.2定义一个新的PHP应用程序 147

7.2.3第一个程序:嗨!AMF-RPC 148

7.2.4使用NetConnection 150

7.3为Zend_ Amf创建远程服务方法 152

7.4传递参数的数据类型 154

第8章 雇员数据库管理系统——使用Zend Amf操控数据库 156

8.1雇员数据管理系统 156

8.1.1创建PHP类 156

8.1.2准备远程服务 160

8.1.3创建Flash影片应用程序 160

8.2以增量方式返回结果集 164

第9章 透过Zend_Amf使用Web服务 168

9.1查看Web服务的接口、方法和属性 168

9.2使用代理调用Web服务 170

9.2.1安装和配置SOAP扩展 171

9.2.2创建远程服务作为代理 172

9.2.3创建Flash应用程序 173

第10章 深入AMF-RPC框架基本原理 177

10.1应用AMF-RPC构建的Flash网络应用程序架构 177

10.1.1理解AMF-RPC开发环境和角色 177

10.1.2使用设计模式 178

10.2深入AMF-RPC网关和服务适配器 180

10.2.1应用AMF-RPC 181

10.2.2了解AMF数据格式 182

10.2.3 AMF-RPC和数据类型 183

10.2.4类的映射和值对象 185

10.2.5 Zend Amf中的魔术引号 192

第11章 使用AMFPHP——开源的AMF-RPC实现 194

11.1安装和配置AMFPHP 194

11.1.1配置AMFPHP 194

11.1.2定义一个新的PHP应用程序 195

11.2第一个程序:嗨!AMF-RPC 197

11.2.1创建PHP应用程序 197

11.2.2创建Flash影片应用程序 198

11.2.3使用AMF-RPC的基本步骤基本原理 199

11.2.4为AMFPHP创建远程服务方法 199

11.2.5为AMFPHP1.2创建远程服务方法 200

11.3使用AMFPHP操控数据库 201

11.3.1雇员数据管理系统 201

11.3.2返回结果集给Flash影片应用程序 208

11.3.3以增量方式显示记录集 209

11.4透过AMFPHP使用Web服务 209

11.4.1创建Web服务代理 209

11.4.2创建Flash应用程序 211

11.4.3 amfphp-1.2使用Web服务 213

第12章 深入AMFPHP——数据类型和实用工具 214

12.1 AMFPHP和数据类型 214

12.1.1关于日期 217

12.1.2常用的数据类型转换 218

12.1.3 AMFPHP中的全局变量 219

12.2使用AMFPHP Service浏览工具 219

12.2.1安装和配置Service浏览工具 220

12.2.2使用Service浏览工具 220

12.2.3类的映射和值对象 221

第13章使用SabreAMF——PHP平台的开源AMF-RPC实现 229

13.1安装和配置SabreAMF 229

13.1.1安装和使用PEAR扩展 229

13.1.2安装和配置SabreAMF 231

13.2使用SabreAMF 232

13.2.1创建PHP类用作远程服务 232

13.2.2创建PHP网页用作网关 233

13.2.3创建Flash影片应用程序 234

第14章 使用XML-RPC加速应用程序开发 236

14.1什么是XML-RPC 236

14.1.1 XML-RPC协议 237

14.1.2配置PHP XML-RPC实现 240

14.1.3 PEAR XML-RPC方法列表 240

14.2使用PHP XML-RPC 242

14.2.1编写客户端 242

14.2.2编写服务端 244

14.2.3基本应用语法 247

14.3使用Flash XML-RPC 248

14.3.1下载和配置xmlrpcflash 248

14.3.2使用xmlrpcflash进行远程调用 249

14.4使用Flash XML-RPC操控数据库 250

第三篇Flash通信应用程序和FMS 262

第15章配合FMS3开发Flash实时通信应用程序 262

15.1了解Flash Media Server 3服务器 262

15.1.1了解通信应用程序的开发 263

15.1.2了解RTMP 263

15.1.3了解流媒体服务器 264

15.2安装和配置Flash Media Server 3服务器运行环境 265

15.2.1关于安装的文件 267

15.2.2启动和停止服务器 267

15.3安装开发和调试环境 268

15.3.1安装创作软件 268

15.3.2安装、配置麦克风和照相机 269

15.4创建第一个Flash通信应用程序 270

15.4.1创建Flash通信应用程序 271

15.4.2创建发布视频的Flash影片应用程序 271

15.4.3创建订阅视频的Flash影片应用程序 275

15.4.4测试Flash通信应用程序 277

15.5 Flash Player设置功能 278

15.5.1保密性和本地存储设置 278

15.5.2麦克风和照相机侦测与设置 280

第16章使用FMS服务器结合 PHP应用程序 282

16.1 AMF-RPC和FMS 282

16.1.1嗨!FMS AMF-RPC for PHP 282

16.1.2使用服务端NetConnection访问远程服务 285

16.1.3使用服务端NetServices访问AMF-RPC远程服务 286

16.2处理数据库查询 287

16.2.1创建Flash通信应用程序处理数据 288

16.2.2创建Flash影片应用程序 289

16.3使用FMS验证客户端连接 292

16.3.1使用FMS连接应用程序服务器验证客户端连接 292

16.3.2使用Ticket方式验证客户端连接 298

16.4使用FMS以HTTP方式访问PHP网页 306

16.4.1使用服务端LoadVars对象访问PHP网页 306

16.4.2使用服务端XML对象访问PHP网页 310

16.5使用服务端WebService访问Web服务 316

16.5.1创建Flash通信应用程序访问Google Web服务 317

16.5.2使用WebService类、SOAPCall类和SOAPFault类 322

16.6使用Flash Media Administration Console 324

16.6.1启动FMS管理控制台 324

16.6.2监控通信应用程序 324

16.6.3使用trace语句向控制台发送信息 326

第17章 使用Red5——开源的实时通信服务器 327

17.1安装和设置Red5服务器的运行环境 327

17.1.1安装、配置JRE 327

17.1.2安装、配置Red5 330

17.2创建第一个使用Red5的Flash通信应用程序 332

第四篇 模块、大规模应用、部署篇 336

第18章注册及登录验证模块 336

18.1应用程序的准备和规划 336

18.2用户注册的实现 338

18.2.1注册模块的基本功能 338

18.2.2数据库设计 340

18.2.3防止机器人注册(表单验证码) 340

18.2.4创建注册表单 344

18.2.5用户输入信息合法性检测 345

18.3用户登录的实现 348

18.3.1用户登录的基本原理 349

18.3.2创建登录验证模块 350

18.4用户重拾密码的实现 350

18.5用户信息的查看和修改 352

18.6编写程序代码完成应用程序功能 353

18.6.1准备Alert组件 354

18.6.2关于使用MD5加密 355

18.6.3安装和配置Mail扩展包 357

18.6.4创建日志模块 358

18.6.5创建用户登录程序 359

18.6.6创建重拾密码程序 365

18.6.7创建新用户注册程序和注册信息修改程序 370

18.6.8创建网站内容部分 383

第19章 大数据分页显示模块 385

19.1结果集分页 385

19.1.1结果集分页的方式 386

19.1.2结果集分页的技术原理 386

19.2数据分页显示模块 387

19.2.1创建Flash应用程序 387

19.2.2使用MySQL LIMIT子句分页 392

19.2.3通用数据库分页 395

第20章 多文件上传和下载管理模块 402

20.1创建文件下载管理软件 402

20.1.1文件下载的基本原理 402

20.1.2实现多文件下载管理程序 404

20.2实现文件上传 408

20.2.1文件上传的基本做法 409

20.2.2实现多文件上传管理程序 411

20.2.3文件上传的原理 412

20.2.4使用PHP实现文件上传 416

第21章Flash视频会议系统 420

21.1技术基础 420

21.2创建和部署视频会议系统 422

21.2.1分会场功能模块 423

21.2.2组建功能区 424

21.2.3创建客户端通信代码 424

21.2.4创建服务端通信代码 428

第22章 开发网上餐厅系统——架构的规划与设计 431

22.1规划设计网络应用程序工程 431

22.1.1选用开发和运行平台 432

22.1.2数据库的选择 432

22.1.3规划应用程序的结构 438

22.1.4应用程序的结构的实现 438

22.2创建主引导程序 439

22.2.1主引导程序模块的布局 439

22.2.2创建导航条 440

22.2.3实现顶部广告模块 443

22.2.4公共信息——日期和天气 447

22.2.5公共信息——国际时钟 449

22.2.6公共信息——促销菜肴和特色菜肴 451

22.2.7登录系统的设计和制作 461

22.3小组协作创建内容模块 470

第23章 开发网上餐厅系统——项目小组协作创建功能模块 472

23.1创建“首页”模块 472

23.2创建“客户中心”模块 474

23.2.1创建Flash影片应用程序完成该模块功能 476

23.2.2编写服务端应用程序代码实现功能 489

23.3创建“特色菜肴”模块 496

23.3.1创建Flash影片应用程序实现模块布局 496

23.3.2创建影片播放器 497

23.3.3创建购物车 499

23.3.4编写代码完成模块功能 506

23.3.5编写服务端应用程序代码实现功能 512

23.4创建“预订座位”模块 518

23.4.1准备必要的资源 519

23.4.2创建Flash影片应用程序完成该模块功能 526

23.4.3编写服务端应用程序代码实现功能 540

23.5创建“预订快餐”模块 544

23.6创建“御店史话”模块 544

23.7创建“食疗食补”模块 544

23.8创建“管理中心”模块 545

23.8.1了解Resolver组件和DataSet组件 546

23.8.2在服务器应用程序中解析Update Packet 552

23.8.3使用RDBMSResolver组件和DataSet组件结合创建管理模块 554

23.8.4编写服务端应用程序代码实现功能 568

23.9部署应用程序 576

第24章Flash网络应用程序沙箱安全和部署 579

24.1资源的拥有者 579

24.2安全沙箱 579

24.2.1远程沙箱 580

24.2.2本地沙箱 580

24.2.3设置本地SWF文件的沙箱类型 581

24.2.4使用Securiry.sandboxType属性判断沙箱类型 583

24.3使用跨域策略文件 583

24.3.1 Web服务器跨域策略文件 584

24.3.2套接字策略文件 585

24.3.3预加载策略文件 586

24.3.4使用PHP代理解决Flash跨域安全 587

24.4在SWF文件中建立策略 588

24.5限制网络API 589

24.5.1阻止端口 589

24.5.2使用allowNetworking参数 590

24.6 Flash与宿主网页 591

24.7关于UIA 592

第25章PHP for Flash数据传输过程中的安全 593

25.1传输过程中的加密 593

25.1.1加密的工作原理 594

25.1.2安全证书的工作原理 595

25.1.3使用隐私和安全证书 596

25.2配置Apache支持SSL 596

25.2.1安装OpenSSL 597

25.2.2创建服务器证书和私钥 597

25.2.3配置Apache和mod_ssl 600

25.2.4信任自签名证书 602

25.2.5创建CA 604

25.2.6使用CA签名和颁发证书 605

25.2.7在客户端安装根证书 606

25.3使用浏览器证书 608

25.3.1使用浏览器证书的注意事项 609

25.3.2创建浏览器证书 609

25.3.3安装浏览器证书 610

25.3.4启用浏览器证书 611

25.3.5使用客户证书映射 615

25.4发布Flash 617

附录A在ActionScript2.0程序中实现AMF-RPC访问 618

A.1设置开发环境 618

A.1.1下载和安装AMF-RPC客户端类库 618

A.1.2第一个程序:嗨!AMF-RPC 619

A.1.3使用AMF-RPC访问远程服务的四个步骤 621

A.1.4获取SessionId 626

A.2创建数据库应用程序 626

A.2.1创建数据库 627

A.2.2创建PHP应用程序返回结果集 628

A.2.3创建Flash影片应用程序 629

A.2.4对比AMFPHP和Zend_Amf 630

A.2.5返回MySQL函数查询结果 631

A.3使用RecordSet处理记录集数据 632

A.3.1从RecordSet对象返回值 633

A.3.2使用RecordSet对象通知 634

A.3.3筛选和排序记录集 635

A.3.4编辑RecordSet对象数据 635

A.3.5使用AMFPHP增量记录集 636

A.4使用DataGlue类处理记录集数据 641

A.4.1使用DataGlue.bindFormatStrings方法绑定记录集 642

A.4.2使用DataGlue.BindFormatFunction方法绑定记录集 643

A.5使用Connection实现AMF-RPC访问 644

A.5.1第一个程序:嗨!AMF-RPC 644

A.5.2使用Connection 646

A.6使用NetServices和Connection配合实现AMF-RPC访问 647

A.6.1第一个程序:嗨!AMF-RPC 647

A.6.2访问远程服务的5个步骤 648

附录BAM F-RPC客户端ActionScript 2.0类库API语法精讲 651

B.1类Connection 652

B.1.1 addHeader方法 653

B.1.2 call方法 653

B.1.3 clone方法 653

B.1.4 close方法 654

B.1.5 connect方法 654

B.1.6 getDebugConfig方法 655

B.1.7 getDebugId方法 655

B.1.8 getService方法 655

B.1.9 setCredentials方法 656

B.1.10 setDebugId方法 656

B.1.11 trace方法 657

B.1.12 version属性 657

B.2类DataGlue 657

B.2.1 bindFormatFunction()方法 658

B.2.2 bindFormatStrings()方法 658

B.2.3 version属性 659

B.3类Fault 659

B.3.1 description属性 659

B.3.2 detail属性 660

B.3.3 faultcode属性 660

B.3.4 faultstring属性 660

B.3.5 type属性 660

B.4类FaultEvent 660

B.5类Log 661

B.5.1 Log类构造器 661

B.5.2 onLog方法 662

B.6类NetDebug 662

B.6.1 initialize方法 663

B.6.2 trace方法 663

B.6.3 version属性 663

B.7类NetDebugConfig 663

B.7.1 app _server属性 664

B.7.2 client属性 664

B.8类NetServices 664

B.8.1 createGatewayConnection方法 665

B.8.2 getConnection方法 665

B.8.3 getHostUrl方法 666

B.8.4 getHttpUrl方法 666

B.8.5 setDefaultGatewayUrl方法 666

B.8.6 setGatewayUrl方法 667

B.8.7 version属性 667

B.9类PendingCall 667

B.10类RecordSet 668

B.10.1 RecordSet 668

B.10.2 addEventListener方法 669

B.10.3 addItem方法 670

B.10.4 addItemAt方法 671

B.10.5 clear方法 671

B.10.6 contains方法 672

B.10.7 editField方法 672

B.10.8 filter方法 673

B.10.9 getColumnNames方法 673

B.10.10 getEditingData方法 673

B.10.11 getItemAt方法 674

B.10.12 getItemEID方法 674

B.10.13 getIterator方法 675

B.10.14 getLength方法 675

B.10.15 getLocalLength方法 676

B.10.16 getNumberAvailable方法 676

B.10.17 getRemoteLength方法 676

B.10.18 isEmpty方法 676

B.10.19 isFullyPopulated方法 677

B.10.20 isLocal方法 677

B.10.21 removeAll方法 678

B.10.22 removeEventListener方法 678

B.10.23 removeItemAt方法 678

B.10.24 replaceItemAt方法 679

B.10.25 setDeliveryMode方法 679

B.10.26 setField方法 680

B.10.27 sort方法 681

B.10.28 sortItems方法 681

B.10.29 sortItemsBy方法 682

B.10.30 columnNames属性 683

B.10.31 items属性 683

B.10.32 length属性 683

B.10.33 version属性 683

B.11类RelayResponder 683

B.12接口Responder 684

B.12.1 onFault方法 685

B.12.2 onResult方法 685

B.13类ResultEvent 685

B.14类Service 685

B.14.1 Service 686

B.14.2 connection属性 687

B.14.3 name属性 687

B.14.4 responder属性 687

B.14.5 version属性 688

B.15类RemotingConnector 688

B.15.1 addEventListener方法 688

B.15.2 removeEventListener方法 688

B.15.3 trigger方法 689

B.15.4 gatewayUrl属性 689

B.15.5 methodName属性 689

B.15.6 multipleSimultaneousAllowed属性 689

B.15.7 params属性 690

B.15.8 password属性 690

B.15.9 results属性 690

B.15.10 serviceName属性 690

B.15.11 shareConnections属性 690

B.15.12 suppressInvalidCalls属性 691

B.15.13 userId属性 691

附录C特殊字符的URL编码对照表 692

附录D参考文献以及资料来源 695