目 录(4)

第16堂课  PDO数据库抽象层 445
 视频讲解:82分钟

16.1  什么是PDO 446

16.1.1  PDO概述 446

16.1.2  PDO特点 446

16.1.3  安装PDO 446

16.2  PDO连接数据库 447

16.2.1  PDO构造函数 447

16.2.2  DSN详解 447

16.3  PDO中执行SQL语句 448

16.3.1  exec()方法 448

16.3.2  query()方法 448

16.3.3  预处理语句——prepare()和execute() 448

16.4  PDO中获取结果集 449

16.4.1  fetch()方法 449

16.4.2  fetchAll()方法 450

16.4.3  fetchColumn()方法 451

16.5  PDO中捕获SQL语句中的错误 453

16.5.1  使用默认模式——PDO::
ERRMODE_SILENT 453

16.5.2  使用警告模式——PDO::
ERRMODE_WARNING 454

16.5.3  使用异常模式——PDO::
ERRMODE_EXCEPTION 455

16.6  PDO中错误处理 456

16.6.1  errorCode()方法 456

16.6.2  errorInfo()方法 457

16.7  PDO中事务处理 459

16.8  PDO中存储过程 460

16.9  照猫画虎——基本功训练 461

16.9.1  基本功训练1——连接MySQL
数据库 461

16.9.2  基本功训练2——通过PDO向数据库中
添加数据 462

16.9.3  基本功训练3——通过PDO浏览
数据库中数据 463

16.9.4  基本功训练4——通过PDO更新
数据库中数据 464

16.9.5  基本功训练5——连接MS SQL Server
数据库 466

16.10  情景应用——拓展与实践 467

16.10.1  情景应用1——明日书店会员注册 467

16.10.2  情景应用2——明日书店会员登录 468

16.10.3  情景应用3——添加留言信息 469

16.10.4  情景应用4——浏览客户留言 470

16.10.5  情景应用5——查询留言内容 471

16.11  自我测试 472

16.12  行动指南 473

16.13  成功可以复制——中国第一
程序员求伯君 474

第17堂课  Smarty模板技术 477
 视频讲解:162分钟

17.1  Smarty模板引擎 478

17.1.1  Smarty模板引擎下载 478

17.1.2  Smarty模板引擎安装 479

17.1.3  Smarty模板引擎配置 479

17.1.4  走进Smarty模板引擎 481

17.2  Smarty模板设计——静态页处理 482

17.2.1  基本语法(注释、函数和属性) 482

17.2.2  Smarty模板设计变量 483

17.2.3  变量调节器 484

17.2.4  内建函数(动态文件、模板文件的包含和
流程控制语句) 485

17.2.5  自定义函数 487

17.2.6  配置文件 487

17.3  Smarty程序设计——动态文件
操作 489

17.3.1  SMARTY_PATH常量 489

17.3.2  Smarty程序设计变量 489

17.3.3  Smarty方法 489

17.3.4  Smarty缓存 490

17.4  照猫画虎——基本功训练 492

17.4.1  基本功训练1——封装Smarty模板的配置
方法 492

17.4.2  基本功训练2——Smarty模板中的
页面设计 493

17.4.3  基本功训练3——if语句判断当前
用户权限 494

17.4.4  基本功训练4——Smarty模板中日期、
时间的格式化输出 496

17.4.5  基本功训练5——register_object方法注册
模板对象 496

17.5  情景应用——拓展与实践 498

17.5.1  情景应用1——Smarty模板中的truncate
方法截取字符串 498

17.5.2  情景应用2——Smarty模板制作后台管理
系统主页 499

17.5.3  情景应用3——html_option函数向下拉
列表中添加列表项 501

17.5.4  情景应用4——Smarty模板中应用正则
表达式 503

17.5.5  情景应用5——开启网站登录页面的
缓存 505

17.6  自我测试 506

17.7  行动指南 507

17.8  成功可以复制——征途巨人
史玉柱 508

第18堂课  Zend Framework框架 511
 视频讲解:145分钟

18.1  Zend Framework的MVC介绍 512

18.1.1  Zend Framework概述 512

18.1.2  Zend Framework常用组件 512

18.1.3  MVC原理 512

18.2  Zend Framework的MVC环境
搭建 513

18.2.1  环境配置 513

18.2.2  框架结构 514

18.2.3  创建流程 515

18.2.4  Zend Framework的编码标准 518

18.3  Zend_Auth身份认证 519

18.3.1  Zend_Auth适配器 519

18.3.2  身份持久认证 520

18.3.3  数据库认证 523

18.4  Zend_Db数据库操作 524

18.4.1  Zend_Db_Adapter数据库操作 524

18.4.2  Zend_Db_Table数据库操作 524

18.4.3  数据表类 526

18.5  Zend_File文件控制 530

18.5.1  使用Zend_File_Transfer_Adapter_Http
实现POST方式文件上传 530

18.5.2  对上传文件的合理性验证 531

18.5.3  为上传增加过滤规则 532

18.6  Zend_Layout网站布局 533

18.6.1  Zend_Layout概述 533

18.6.2  Zend_Layout使用方法 533

18.6.3  Zend_Layout应用实例 534

18.7  Zend_Paginator分页 536

18.7.1  Zend_Paginator简介 536

18.7.2  Zend_Paginator分页方法 536

18.7.3  Zend_Paginator分页应用 537

18.8  照猫画虎——基本功训练 540

18.8.1  基本功训练1——通过Zend_Acl控制
角色和资源的权限 540

18.8.2  基本功训练2——比较缓存日期与
本地日期 542

18.8.3  基本功训练3——应用Zend_Config配置
站点初始参数 544

18.8.4  基本功训练4——应用Zend_Form制作
用户注册表单 547

18.8.5  基本功训练5——应用Zend_Mail
发送邮件 549

18.9  情景应用——拓展与实践 551

18.9.1  情景应用1——应用Zend Framework
进行用户身份验证 551

18.9.2  情景应用2——应用Zend Framework
实现查询结果关键字描红 553

18.9.3  情景应用3——应用Zend Framework
设计新闻发布系统首页 556

18.9.4  情景应用4——应用Zend_Paginaator
实现数据分页显示 560

18.9.5  情景应用5——应用Zend_Mail
接收邮件 561

18.10  自我测试 564

18.11  行动指南 564

18.12  成功可以复制——创造互联网搜索
时代拉里·佩奇和谢尔盖·布林 565

第19堂课  PHP的安全与防护 567
 视频讲解:40分钟

19.1  PHP加密函数 568

19.1.1  使用crypt()函数进行加密 568

19.1.2  使用md5()函数进行加密 569

19.1.3  使用sha1()函数进行加密 570

19.2  PHP加密扩展库 570

19.2.1  Mcrypt扩展库 570

19.2.2  Mhash扩展库 571

19.3  PHP漏洞和防护措施 572

19.3.1  本地文件包含漏洞 572

19.3.2  远程文件包含漏洞 573

19.3.3  文件上传漏洞 573

19.3.4  提交表单漏洞 574

19.3.5  SQL注入漏洞 575

19.4  照猫画虎——基本功训练 575

19.4.1  基本功训练1——通过crypt()函数进行
加密 575

19.4.2  基本功训练2——通过md5()函数进行
加密 576

19.4.3  基本功训练3——通过sha1()函数进行
加密 576

19.4.4  基本功训练4——通过mcrypt()函数进行
加密、解密操作 577

19.4.5  基本功训练5——通过mhash()扩展库
进行加密、解密 578

19.5  情景应用——拓展与实践 578

19.5.1  情景应用1——通过crypt()函数对用户
注册密码进行加密 578

19.5.2  情景应用2——通过md5()函数对用户
注册密码进行加密 579

19.5.3  情景应用3——通过自定义函数实现
加密操作 580

19.5.4  情景应用4——隐藏PHP文件
扩展名 580

19.5.5  情景应用5——禁止用户输入
敏感字符 581

19.6  自我测试 583

19.7  行动指南 584

19.8  成功可以复制——初中站长的创业
故事李兴平 585

第20堂课  PHP的字符编码 587
 视频讲解:79分钟

20.1  字符集和编码 588

20.1.1  ISO 8859 字符集 588

20.1.2  GB2312与GBK字符集 588

20.1.3  Unicode字符集 589

20.1.4  UTF-8编码 589

20.2  PHP网页的字符编码 590

20.2.1  设置编码格式 590

20.2.2  转换编码格式 591

20.2.3  检测字符串的编码 592

20.3  PHP开发中的乱码问题 593

20.3.1  解决页面中的乱码问题 593

20.3.2  数据库中的字符集编码问题 594

20.3.3  避免截取中文字符串时出现乱码 595

20.4  照猫画虎——基本功训练 596

20.4.1  基本功训练1——Dreamweaver中编码
格式的选择 596

20.4.2  基本功训练2——创建gb2312编码
格式的网页 597

20.4.3  基本功训练3——通过iconv()函数实现
编码格式的转换 598

20.4.4  基本功训练4——通过header()函数
设置PHP脚本文件的编码格式 599

20.4.5  基本功训练5——设置MySQL数据库中
数据的编码格式 599

20.5  情景应用——拓展与实践 601

20.5.1  情景应用1——采用utf-8编码设计论坛
网页 601

20.5.2  情景应用2——以utf8编码输出论坛中
数据 602

20.5.3  情景应用3——论坛中控制帖子标题
输出的长度 603

20.5.4  情景应用4——完成论坛中帖子的
发布 605

20.5.5  情景应用5——对输出的数据进行编码
格式转换 606

20.6  自我测试 607

20.7  行动指南 608

20.8  成功可以复制——暴雪公司的
领航者迈克·莫汉 609

读书导航