PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition

PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [澳] , [澳] ,
2009-04
版次: 1
ISBN: 9787111262817
定价: 95.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 714页
正文语种: 简体中文
原版书名: PHP and MySQL Web Development, Fourth Edition
493人买过
  •   《PHP和MySQL Web开发(原书第4版)》将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。
      《PHP和MySQL Web开发(原书第4版)》是第4版,经过了全面的更新、重写和扩展,包括PHP5.3改进的特性(例如,更好的错误和异常处理),MySQL的存储过程和存储引擎,Ajax技术与Web2.0以及Web应用需要注意的安全问题。
      PHP平IEIMySQL是非常流行的开源技术,它们非常适合快速开发数据库驱动的Web应用。PHP是一种功能强大的脚本语言,专门用于快速创建高性能的Web应用,而MySQL则是一个快速而又可靠的数据库,它能很好地与PHP集成,适用于基于互联网的动态应用。
      《PHP和MySQL Web开发(原书第4版)》介绍了如何使用这些工具创建高效和交互式的Web应用。它清晰地介绍了PHP语言的基础,解释了如何设置和使用MySQL数据,以及如何使用PHP与数据库和服务器进行交互。
      《PHP和MySQL Web开发(原书第4版)》非常实用,包括大量实际应用中的例子。例如,用户验证、创建购物车、动态生成PDF文档和图像、发送和管理电子邮件、管理用户讨论、使用XML连接Web服务,以及使用基于Ajax的交互性开发Web2.0应用。
      与上一版相比,本书经过了更新、重写以及扩展,并涵盖了PHP5到5.3的所有特性,例如命名空间和闭包以及MySQL5.1引入的特性。   LauraThomson,Mozilla公司的高级软件工程师。之前,她是OmniTI公司和TangledWebDesign公司的合伙人。此外,Laura曾经在RMIT大学和波士顿顾问集团工作过。她获得了应用科学(计算机科学)的学士学位和工程学(计算机系统工程)学士学位。在她的空闲时间,她非常喜欢骑马,讨论免费软件和开源软件以及睡觉。
      LukeWelling,OmniTI公司的一位Web架构师,他经常在一些国际会议(例如,OSCON,ZendCon,MySQLUC,HPCon,OSDC以及LinuxTag)中就开源和Web开发的话题发表演讲。在加入OmniTI公司之前,他曾作为数据库提供商的Web分析师为Hitwise.com公司工作。此外,他还是TangledWebDesign公司的独立顾问。他还在澳大利亚墨尔本的RMIT大学教授计算机科学课程。他获得了应用科学(计算机科学)的学士学位。在他的空闲时间,他希望治好他的失眠症。
      其他参与者:

      JulieC.Meloni,i2iInteractive公司的技术总监,这是一家位于加利弗里亚LosAltos的多媒体公司。她从Web一问世以及出现GUIWeb浏览器时就致力于基于Web的应用开发。她编著过大量书籍,撰写过大量关于Web开发语言和数据的问题,其中包括销售情况良好的《SamsTeachYourselfPHP,MySQL,andApacheAllinOne》。
      AdamDeFields,Web应用开发方面,项目管理以及UI设计方面的顾问。他居住在密歇根的GrandRapids。在这个城市,有他自己的公司EmanationSystems,LLC,这是一家在2002年成立的公司。他参加过使用不同技术实现的Web开发项目,但是,他还是喜欢开发基于PHP/MySQL的项目。
      MarcWandschneider,一个软件开发方面的自由职业者,此外他还是作家和演讲者,经常在全球范围参与有意思的项目开发。最近,他的注意力集中在编写健壮和可扩展的Web应用。在2005年,他编写了一本名为《CoreWebApplicationProgramming withPHPandMySQL》的图书。此前,他是SWiK开源社区的主要开发人员。目前,Marc居住在北京,他将他的时间花在中文学习和编程。 读者反馈
    译者序
    前言
    作者简介
    第一篇使用PHP
    第1章PHP快速入门教程
    1.1开始之前:了解PHP
    1.2创建一个示例应用:Bob汽车零部件商店
    1.2.1创建订单表单
    1.2.2表单处理
    1.3在HTML中嵌入PHP
    1.3.1使用PHP标记
    1.3.2PHP语句
    1.3.3空格
    1.3.4注释
    1.4添加动态内容
    1.4.1调用函数
    1.4.2使用date()函数
    1.5访问表单变量
    1.5.1简短、中等以及长风格的表单变量
    1.5.2字符串的连接
    1.5.3变量和文本
    1.6理解标识符
    1.7检查变量类型
    1.7.1PHP的数据类型
    1.7.2类型强度
    1.7.3类型转换
    1.7.4可变变量
    1.8声明和使用常量
    1.9理解变量的作用域
    1.10使用操作符
    1.10.1算术操作符
    1.10.2字符串操作符
    1.10.3赋值操作符
    1.10.4比较操作符
    1.10.5逻辑操作符
    1.10.6位操作符
    1.10.7其他操作符
    1.11计算表单总金额
    1.12理解操作符的优先级和结合性:
    1.13使用可变函数
    1.13.1测试和设置变量类型
    1.13.2测试变量状态
    1.13.3变量的重解释
    1.14根据条件进行决策
    1.14.1if语句
    1.14.2代码块
    1.14.3else语句
    1.14.4elseif语句
    1.14.5switch语句
    1.14.6比较不同的条件
    1.15通过迭代实现重复动作
    1.15.1while循环
    1.15.2for和foreach循环
    1.15.3do...while循环
    1.16从控制结构或脚本中跳出
    1.17使用可替换的控制结构语法
    1.18使用declare
    1.19下一章

    第2章数据的存储与检索
    2.1保存数据以便后期使用
    2.2存储和检索Bob的订单
    2.3文件处理
    2.4打开文件
    2.4.1选择文件模式
    2.4.2使用fopen()打开文件
    2.4.3通过FTP或HTTP打开文件
    2.4.4解决打开文件时可能遇到的问题
    2.5写文件
    2.5.1fwrite()的参数
    2.5.2文件格式
    2.6关闭文件
    2.7读文件
    2.7.1以只读模式打开文件:fopen()
    2.7.2知道何时读完文件:feof()
    2.7.3每次读取一行数据:fgets()、fgetss()和fgetcsv()
    2.7.4读取整个文件:readfile()、fpassthru()和file()
    2.7.5读取一个字符:fgetc()
    2.7.6读取任意长度:fread()
    2.8使用其他有用的文件函数
    2.8.1查看文件是否存在:file_exists()
    2.8.2确定文件大小:filesize()
    2.8.3删除一个文件:unlink()
    2.8.4在文件中定位:rewind()、fseek()和ftell()
    2.9文件锁定
    2.10更好的方式:数据库管理系统
    2.10.1使用普通文件的几个问题
    2.10.2RDBMS是如何解决这些问题的
    2.11进一步学习
    2.12下一章

    第3章使用数组
    3.1什么是数组
    3.2数字索引数组
    3.2.1数字索引数组的初始化
    3.2.2访问数组的内容
    3.2.3使用循环访问数组
    3.3使用不同索引的数组
    3.3.1初始化相关数组
    3.3.2访问数组元素
    3.3.3使用循环语句
    3.4数组操作符
    3.5多维数组
    3.6数组排序
    3.6.1使用sort()函数
    3.6.2使用asort()函数和ksort()函数对相关数组排序
    3.6.3反向排序
    3.7多维数组的排序
    3.7.1用户定义排序
    3.7.2反向用户排序
    3.8对数组进行重新排序
    3.8.1使用shuffle()函数
    3.8.2使用array_reverse()函数
    3.9从文件载入数组
    3.10执行其他的数组操作
    3.10.1在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev()
    3.10.2对数组的每一个元素应用任何函数:array_walk()
    3.10.3统计数组元素个数:count()、sizeof()和array_count_values()
    3.10.4将数组转换成标量变量:extract()
    3.11进一步学习
    3.12下一章

    第4章字符串操作与正则表达式
    4.1创建一个示例应用程序:智能表单邮件
    4.2字符串的格式化
    4.2.1字符串的整理:chop()、ltrim()和trim()
    4.2.2格式化字符串以便显示
    4.2.3格式化字符串以便存储:addslashes()和stripslashes()
    4.3用字符串函数连接和分割字符串
    4.3.1使用函数explode()、implode()和join()
    4.3.2使用strtok()函数
    4.3.3使用substr()函数
    4.4字符串的比较
    4.4.1字符串的排序:strcmp()、strcasecmp()和strnatcmp()
    4.4.2使用strlen()函数测试字符串的长度
    4.5使用字符串函数匹配和替换子字符串
    4.5.1在字符串中查找字符串:strstr()、strchr()、strrchr()和stristr()
    4.5.2查找子字符串的位置:strpos()、strrpos()
    4.5.3替换子字符串:str_replace()、substr_replace()
    4.6正则表达式的介绍
    4.6.1基础知识
    4.6.2字符集和类
    4.6.3重复
    4.6.4子表达式
    4.6.5子表达式计数
    4.6.6定位到字符串的开始或末尾
    4.6.7分支
    4.6.8匹配特殊字符
    4.6.9特殊字符一览
    4.6.10在智能表单中应用
    4.7用正则表达式查找子字符串
    4.8使用正则表达式分割字符串
    4.9比较字符串函数和正则表达式函数
    4.10进一步学习
    4.11下一章

    第5章代码重用与函数编写
    5.1代码重用的好处
    5.1.1成本
    5.1.2可靠性
    5.1.3一致性
    5.2使用require()和include()函数
    5.2.1文件扩展名和require()语句
    5.2.2使用require()制作Web站点的模版
    5.2.3使用auto_prepend_file和auto_append_file
    5.3在PHP中使用函数
    5.3.1调用函数
    5.3.2调用未定义的函数
    5.3.3理解字母大小写和函数名称
    5.4理解为什么要定义自己的函数
    5.5了解基本的函数结构
    5.5.1函数命名
    5.6使用参数
    5.7理解作用域
    5.8参数的引用传递和值传递
    5.9使用Return关键字
    5.9.1从函数返回一个值
    5.10实现递归
    5.10.1名称空间
    5.11进一步学习
    5.12下一章

    第6章面向对象的PHP
    6.1理解面向对象的概念
    6.1.1类和对象
    6.1.2多态性
    6.1.3继承
    6.2在PHP中创建类、属性和操作
    6.2.1类的结构
    6.2.2构造函数
    6.2.3析构函数
    6.3类的实例化
    6.4使用类的属性
    6.5使用private和public关键字控制访问
    6.6类操作的调用
    6.7在PHP中实现继承
    6.7.1通过继承使用private和protected访问修饰符控制可见性
    6.7.2重载
    6.7.3使用final关键字禁止继承和重载
    6.7.4理解多重继承
    6.7.5实现接口
    6.8类的设计
    6.9编写类代码
    6.10理解PHP面向对象新的高级功能
    6.10.1使用Per-Class常量
    6.10.2实现静态方法
    6.10.3检查类的类型和类型提示
    6.10.4克隆对象
    6.10.5使用抽象类
    6.10.6使用__call()重载方法
    6.10.7使用__autoload()方法
    6.10.8实现迭代器和迭代
    6.10.9将类转换成字符串
    6.10.10使用Reflection(反射)API
    6.11下一章

    第7章错误和异常处理
    7.1异常处理的概念
    7.2Exception类
    7.3用户自定义异常
    7.4Bob的汽车零部件商店应用程序的异常
    7.5异常和PHP的其他错误处理机制
    7.6进一步学习
    7.7下一章

    第二篇使用MySQL
    第8章设计Web数据库
    8.1关系数据库的概念
    8.1.1表格
    8.1.2列
    8.1.3行
    8.1.4值
    8.1.5键
    8.1.6模式
    8.1.7关系
    8.2如何设计Web数据库
    8.2.1考虑要建模的实际对象
    8.2.2避免保存冗余数据
    8.2.3使用原子列值
    8.2.4选择有意义的键
    8.2.5考虑需要询问数据库的问题
    8.2.6避免多个空属性的设计
    8.2.7表格类型的总结
    8.3Web数据库架构
    8.4进一步学习
    8.5下一章

    第9章创建Web数据库
    9.1使用MySQL监视程序
    9.2登录到MySQL
    9.3创建数据库和用户
    9.4设置用户与权限
    9.5MySQL权限系统的介绍
    9.5.1最少权限原则
    9.5.2创建用户:GRANT命令
    9.5.3权限的类型和级别
    9.5.4REVOKE命令
    9.5.5使用GRANT和REVOKE的例子
    9.6创建一个Web用户
    9.7使用正确的数据库
    9.8创建数据库表
    9.8.1理解其他关键字的意思
    9.8.2理解列的类型
    9.8.3用SHOW和DESCRIBE来查看数据库
    9.8.4创建索引
    9.9理解MySQL的标识符
    9.10选择列数据类型
    9.10.1数字类型
    9.10.2日期和时间类型
    9.10.3字符串类型
    9.11进一步学习
    9.12下一章

    第10章使用MySQL数据库
    10.1SQL是什么
    10.2在数据库中插入数据
    10.3从数据库中获取数据
    10.3.1获取满足特定条件的数据
    10.3.2从多个表中获取数据
    10.3.3以特定的顺序获取数据
    10.3.4分组与合计数据
    10.3.5选择要返回的行
    10.3.6使用子查询
    10.4更新数据库记录
    10.5创建后修改表
    10.6删除数据库中的记录
    10.7表的删除
    10.8删除整个数据库
    10.9进一步学习
    10.10下一章

    第11章使用PHP从Web访问MySQL数据库
    11.1Web数据库架构的工作原理
    11.2从Web查询数据库的基本步骤
    11.2.1检查与过滤用户输入数据
    11.2.2建立一个连接
    11.2.3选择使用的数据库
    11.2.4查询数据库
    11.2.5检索查询结果
    11.2.6从数据库断开连接
    11.3将新信息放入数据库
    11.4使用Prepared语句
    11.5使用PHP与数据库交互的其他接口
    11.5.1使用常规的数据库接口:PEARMDB2
    11.6进一步学习
    11.7下一章

    第12章MySQL高级管理
    12.1深入理解权限系统
    12.1.1user表
    12.1.2db表和host表
    12.1.3tables_priv表,columns_priv表和procs_priv表
    12.1.4访问控制:MySQL如何使用Grant表
    12.1.5更新权限:修改什么时候生效
    12.2提高MySQL数据库的安全性
    12.2.1从操作系统角度来保护MySQL
    12.2.2密码
    12.2.3用户权限
    12.2.4Web问题
    12.3获取更多关于数据库的信息
    12.3.1使用SHOW获取信息
    12.3.2使用DESCRIBE获取关于列的信息
    12.3.3用EXPLAIN理解查询操作的工作过程
    12.4数据库的优化
    12.4.1设计优化
    12.4.2权限
    12.4.3表的优化
    12.4.4使用索引
    12.4.5使用默认值
    12.4.6其他技巧
    12.5备份MySQL数据库
    12.6恢复MySQL数据库
    12.7实现复制
    12.7.1设置主服务器
    12.7.2执行初始的数据传输
    12.7.3设置一个/多个从服务器
    12.8进一步学习
    12.9下一章

    第13章MySQL高级编程
    13.1LOADDATAINFILE语句
    13.2存储引擎
    13.3事务
    13.3.1理解事务的定义
    13.3.2通过InnoDB使用事务
    13.4外键
    13.5存储过程
    13.5.1基本示例
    13.5.2局部变量
    13.5.3游标和控制结构
    13.6进一步学习
    13.7下一章

    第三篇电子商务与安全性
    第14章运营一个电子商务网站
    14.1我们要实现什么目标
    14.2考虑电子商务网站的类型
    14.2.1使用在线说明书公布信息
    14.2.2接收产品或服务的订单
    14.2.3提供服务和数字产品
    14.2.4为产品或服务增值
    14.2.5减少成本
    14.3理解风险和威胁
    14.3.1网络黑客
    14.3.2不能招揽足够的生意
    14.3.3计算机硬件故障
    14.3.4电力、通信、网络或运输故障
    14.3.5广泛的竞争
    14.3.6软件错误
    14.3.7不断变化的政府政策和税收
    14.3.8系统容量限制
    14.4选择一个策略
    14.5下一章

    第15章电子商务的安全问题
    15.1信息的重要程度
    15.2安全威胁
    15.2.1机密数据的泄露
    15.2.2数据丢失和数据破坏
    15.2.3数据修改
    15.2.4拒绝服务
    15.2.5软件错误
    15.2.6否认
    15.3易用性,性能、成本和安全性
    15.4建立一个安全政策
    15.5身份验证原则
    15.6加密技术基础
    15.6.1私有密钥加密
    15.6.2公有密钥加密
    15.6.3数字签名
    15.7数字证书
    15.8安全的Web服务器
    15.9审计与日志记录
    15.10防火墙
    15.11备份数据
    15.11.1备份常规文件
    15.11.2备份与恢复MySQL数据库
    15.12自然环境安全
    15.13下一章

    第16章Web应用的安全
    16.1处理安全性问题的策略
    16.1.1以正确心态为开始
    16.1.2安全性和可用性之间的平衡
    16.1.3安全监视
    16.1.4基本方法
    16.2识别所面临的威胁
    16.2.1访问或修改敏感数据
    16.2.2数据丢失或破坏
    16.2.3拒绝服务
    16.2.4恶意代码注入
    16.2.5服务器被攻破
    16.3了解与我们“打交道”的用户
    16.3.1破解人员
    16.3.2受影响机器的未知情用户
    16.3.3对公司不满的员工
    16.3.4硬件被盗
    16.3.5我们自身
    16.4代码的安全性
    16.4.1过滤用户输入
    16.4.2转义输出
    16.4.3代码组织
    16.4.4代码自身的问题
    16.4.5文件系统因素
    16.4.6代码稳定性和缺陷
    16.4.7执行引号和exec
    16.5Web服务器和PHP的安全性
    16.5.1保持软件的更新
    16.5.2查看php.ini文件
    16.5.3Web服务器配置
    16.5.4Web应用的商业主机服务
    16.6数据库服务器的安全性
    16.6.1用户和权限系统
    16.6.2发送数据至服务器
    16.6.3连接服务器
    16.6.4运行服务器
    16.7保护网络
    16.7.1安装防火墙
    16.7.2使用隔离区域(DMZ)
    16.7.3应对DoS和DDoS攻击
    16.8计算机和操作系统的安全性
    16.8.1保持操作系统的更新
    16.8.2只运行必须的软件
    16.8.3服务器的物理安全性
    16.9灾难计划
    16.10下一章

    第17章使用PHP和MySQL实现身份验证
    17.1识别访问者
    17.2实现访问控制
    17.2.1保存密码
    17.2.2密码的加密
    17.2.3保护多个网页
    17.3使用基本身份验证
    17.4在PHP中使用基本身份验证
    17.5在Apache的.htaccess文件中使用基本身份验证
    17.6使用mod_auth_mysql身份验证
    17.6.1安装mod_auth_mysql
    17.6.2使用mod_auth_mysql
    17.7创建自定义身份验证
    17.8进一步学习
    17.9下一章

    第18章使用PHP和MySQL实现安全事务
    18.1提供安全的事务处理
    18.1.1用户机器
    18.1.2Internet
    18.1.3我们的系统
    18.2使用加密套接字层(SSL)
    18.3屏蔽用户的输入
    18.4提供安全存储
    18.5存储信用卡号码
    18.6在PHP中使用加密技术
    18.6.1安装GPG
    18.6.2测试GPG
    18.7进一步学习
    18.8下一章

    第四篇PHP的高级技术
    第19章与文件系统和服务器的交互
    19.1文件上载
    19.1.1文件上载的HTML代码
    19.1.2编写处理文件的PHP
    19.1.3避免常见上载问题
    19.2使用目录函数
    19.2.1从目录读取
    19.2.2获得当前目录的信息
    19.2.3创建和删除目录
    19.3与文件系统的交互
    19.3.1获取文件信息
    19.3.2更改文件属性
    19.3.3创建、删除和移动文件
    19.4使用程序执行函数
    19.5与环境变量交互:getenv()和putenv()
    19.6进一步学习
    19.7下一章

    第20章使用网络函数和协议函数
    20.1了解可供使用的协议
    20.2发送和读取电子邮件
    20.3使用其他Web站点的数据
    20.4使用网络查找函数
    20.5备份或镜像一个文件
    20.5.1使用FTP备份或镜像一个文件
    20.5.2上传文件
    20.5.3避免超时
    20.5.4使用其他的FTP函数
    20.6进一步学习
    20.7下一章

    第21章日期和时间的管理
    21.1在PHP中获取日期和时间
    21.1.1使用date()函数
    21.1.2使用UNIX时间戳
    21.1.3使用getdate()函数
    21.1.4使用checkdate()函数检验日期有效性
    21.1.5格式化时间戳
    21.2在PHP日期格式和MySQL日期格式之间进行转换
    21.3在PHP中计算日期
    21.4在MySQL中计算日期
    21.5使用微秒
    21.6使用日历函数
    21.7进一步学习
    21.8下一章

    第22章创建图像
    22.1在PHP中设置图像支持
    22.2理解图像格式
    22.2.1JPEG
    22.2.2PNG
    22.2.3WBMP
    22.2.4GIF
    22.3创建图像
    22.3.1创建一个背景图像
    22.3.2在图像上绘图或打印文本
    22.3.3输出最终图形
    22.3.4清理
    22.4在其他页面中使用自动生成的图像
    22.5使用文本和字体创建图像
    22.5.1创建基本画布
    22.5.2将文本调整到适合按钮
    22.5.3放置文本
    22.5.4将文本写到按钮上
    22.5.5完成
    22.6绘制图像与用图表描绘数据
    22.7使用其他的图像函数
    22.8进一步学习
    22.9下一章

    第23章在PHP中使用会话控制
    23.1什么是会话控制
    23.2理解基本的会话功能
    23.2.1什么是cookie
    23.2.2通过PHP设置cookie
    23.2.3在会话中使用cookie
    23.2.4存储会话ID
    23.3实现简单的会话
    23.3.1开始一个会话
    23.3.2注册一个会话变量
    23.3.3使用会话变量
    23.3.4注销变量与销毁会话
    23.4创建一个简单的会话例子
    23.5配置会话控制
    23.6通过会话控制实现身份验证
    23.7进一步学习
    23.8下一章

    第24章其他有用的特性
    24.1使用eval()函数对字符串求值
    24.2终止执行:die和exit
    24.3序列化变量和对象
    24.4获取PHP环境信息
    24.4.1找到所加载的PHP扩展部件
    24.4.2识别脚本所有者
    24.4.3确定脚本最近修改时间
    24.5暂时改变运行时环境
    24.6源代码加亮
    24.7在命令行中使用PHP
    24.8下一章

    第五篇创建实用的PHP和MySQL项目
    第25章在大型项目中使用PHP和MySQL
    25.1在Web开发中应用软件工程
    25.2规划和运行Web应用程序项目
    25.3重用代码
    25.4编写可维护代码
    25.4.1编码标准
    25.4.2分解代码
    25.4.3使用标准的目录结构
    25.4.4文档化和共享内部函数
    25.5实现版本控制
    25.6选择一个开发环境
    25.7项目的文档化
    25.8建立原型
    25.9将逻辑和内容分离
    25.10优化代码
    25.10.1使用简单优化
    25.10.2使用Zend产品
    25.11测试
    25.12进一步学习
    25.13下一章

    第26章调试
    26.1编程错误
    26.1.1语法错误
    26.1.2运行时错误
    26.1.3逻辑错误
    26.2使用变量帮助调试
    26.3错误报告级别
    26.4改变错误报告设置
    26.5触发自定义错误
    26.6巧妙地处理错误
    26.7下一章

    第27章建立用户身份验证机制和个性化设置
    27.1解决方案的组成
    27.1.1用户识别和个性化设置
    27.1.2保存书签
    27.1.3推荐书签
    27.2解决方案概述
    27.3实现数据库
    27.4实现基本的网站
    27.5实现用户身份验证
    27.5.1注册
    27.5.2登录
    27.5.3登出
    27.5.4修改密码
    27.5.5重设遗忘的密码
    27.6实现书签的存储和检索
    27.6.1添加书签
    27.6.2显示书签
    27.6.3删除书签
    27.7实现书签推荐
    27.8考虑可能的扩展
    27.9下一章

    第28章创建一个购物车
    28.1解决方案的组成
    28.1.1创建一个在线目录
    28.1.2在用户购买商品的时候记录购买行为
    28.1.3实现一个付款系统
    28.1.4创建一个管理界面
    28.2解决方案概述
    28.3实现数据库
    28.4实现在线目录
    28.4.1列出目录
    28.4.2列出一个目录中的所有图书
    28.4.3显示图书详细信息
    28.5实现购物车
    28.5.1使用show_cart.php脚本
    28.5.2浏览购物车
    28.5.3将物品添加到购物库
    28.5.4保存更新后的购物车
    28.5.5打印标题栏摘要
    28.5.6结账
    28.6实现付款
    28.7实现一个管理界面
    28.8扩展该项目
    28.9使用一个已有系统
    28.10下一章

    第29章创建一个基于Web的电子邮件服务系统
    29.1解决方案的组成
    29.1.1电子邮件协议:POP3和IMAP
    29.1.2PHP对POP3和IMAP的支持
    29.2解决方案概述
    29.3建立数据库
    29.4了解脚本架构
    29.5登录与登出
    29.6建立账户
    29.6.1创建一个新账户
    29.6.2修改已有账户
    29.6.3删除账户
    29.7阅读邮件
    29.7.1选择账户
    29.7.2查看邮箱内容
    29.7.3阅读邮件消息
    29.7.4查看消息标题
    29.7.5删除邮件
    29.8发送邮件
    29.8.1发送一则新消息
    29.8.2回复或转发邮件
    29.9扩展这个项目
    29.10下一章

    第30章创建一个邮件列表管理器
    30.1解决方案的组成
    30.1.1建立列表和订阅者数据库
    30.1.2上载新闻信件
    30.1.3发送带附件的邮件
    30.2解决方案概述
    30.3建立数据库
    30.4定义脚本架构
    30.5实现登录
    30.5.1新账户的创建
    30.5.2登录
    30.6用户函数的实现
    30.6.1查看列表
    30.6.2查看邮件列表信息
    30.6.3查看邮件列表存档
    30.6.4订阅与取消订阅
    30.6.5更改账户设置
    30.6.6更改密码
    30.6.7登出
    30.7管理功能的实现
    30.7.1创建新的邮件列表
    30.7.2上载新的新闻信件
    30.7.3多文件上载的处理
    30.7.4预览新闻信件
    30.7.5发送邮件
    30.8扩展这个项目
    30.9下一章

    第31章创建一个Web论坛
    31.1理解流程
    31.2解决方案的组成
    31.3解决方案概述
    31.4数据库的设计
    31.5查看文章的树型结构
    31.5.1展开和折叠
    31.5.2显示文章
    31.5.3使用treenode类
    31.6查看单个的文章
    31.7添加新文章
    31.8添加扩充
    31.9使用一个已有的系统
    31.10下一章

    第32章生成PDF格式的个性化文档
    32.1项目概述
    32.1.1评估文档格式
    32.2解决方案的组成
    32.2.1问题与回答系统
    32.2.2文档生成软件
    32.3解决方案概述
    32.3.1提问
    32.3.2给答题评分
    32.3.3生成RTF证书
    32.3.4从模板生成PDF证书
    32.3.5使用PDFlib生成PDF文档
    32.3.6使用PDFlib的一个“HelloWorld”程序
    32.3.7用PDFlib生成证书
    32.4处理标题的问题
    32.5扩展该项目
    32.6下一章

    第33章使用XML和SOAP来连接Web服务
    33.1项目概述:使用XML和Web服务
    33.1.1理解XML
    33.1.2理解Web服务
    33.2解决方案的组成
    33.2.1使用Amazon的Web服务接口
    33.2.2XML的解析:REST响应
    33.2.3在PHP中使用SOAP
    33.2.4缓存
    33.3解决方案概述
    33.3.1核心应用程序
    33.3.2显示特定种类的图书
    33.3.3获得一个AmazonResultSet类
    33.3.4使用REST发送和接收请求
    33.3.5使用SOAP发送和接收请求
    33.3.6缓存请求返回的数据
    33.3.7创建购物车
    33.3.8到Amazon付账
    33.4安装项目代码
    33.5扩展这个项目
    33.6进一步学习

    第34章使用Ajax构建Web2.0应用
    34.1Ajax是什么?
    34.1.1HTTP请求和响应
    34.1.2DHTML和XHTML
    34.1.3级联样式单(CSS)
    34.1.4客户端编程
    34.1.5服务器端编程
    34.1.6XML和XSLT
    34.2Ajax基础
    34.2.1XMLHTTPRequest对象
    34.2.2与服务器通信
    34.2.3处理服务器响应
    34.2.4整合应用
    34.3在以前的项目添加Ajax元素
    34.3.1在PHPBookmark应用中添加Ajax元素
    34.4进一步学习
    34.4.1进一步了解文档对象模型(DOM)
    34.4.2Ajax应用可用的JavaScript函数库
    34.4.3Ajax开发人员网站

    第六篇附录
    附录A安装PHP及MySQL
    附录BWeb资源
    第1章PHP快速入门教程
    第2章数据的存储与检索
    第3章使用数组
    第4章字符串操作与正则表达式
    第5章代码重用与函数编写
    第6章面向对象的PHP
    第7章错误和异常处理
  • 内容简介:
      《PHP和MySQL Web开发(原书第4版)》将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。
      《PHP和MySQL Web开发(原书第4版)》是第4版,经过了全面的更新、重写和扩展,包括PHP5.3改进的特性(例如,更好的错误和异常处理),MySQL的存储过程和存储引擎,Ajax技术与Web2.0以及Web应用需要注意的安全问题。
      PHP平IEIMySQL是非常流行的开源技术,它们非常适合快速开发数据库驱动的Web应用。PHP是一种功能强大的脚本语言,专门用于快速创建高性能的Web应用,而MySQL则是一个快速而又可靠的数据库,它能很好地与PHP集成,适用于基于互联网的动态应用。
      《PHP和MySQL Web开发(原书第4版)》介绍了如何使用这些工具创建高效和交互式的Web应用。它清晰地介绍了PHP语言的基础,解释了如何设置和使用MySQL数据,以及如何使用PHP与数据库和服务器进行交互。
      《PHP和MySQL Web开发(原书第4版)》非常实用,包括大量实际应用中的例子。例如,用户验证、创建购物车、动态生成PDF文档和图像、发送和管理电子邮件、管理用户讨论、使用XML连接Web服务,以及使用基于Ajax的交互性开发Web2.0应用。
      与上一版相比,本书经过了更新、重写以及扩展,并涵盖了PHP5到5.3的所有特性,例如命名空间和闭包以及MySQL5.1引入的特性。
  • 作者简介:
      LauraThomson,Mozilla公司的高级软件工程师。之前,她是OmniTI公司和TangledWebDesign公司的合伙人。此外,Laura曾经在RMIT大学和波士顿顾问集团工作过。她获得了应用科学(计算机科学)的学士学位和工程学(计算机系统工程)学士学位。在她的空闲时间,她非常喜欢骑马,讨论免费软件和开源软件以及睡觉。
      LukeWelling,OmniTI公司的一位Web架构师,他经常在一些国际会议(例如,OSCON,ZendCon,MySQLUC,HPCon,OSDC以及LinuxTag)中就开源和Web开发的话题发表演讲。在加入OmniTI公司之前,他曾作为数据库提供商的Web分析师为Hitwise.com公司工作。此外,他还是TangledWebDesign公司的独立顾问。他还在澳大利亚墨尔本的RMIT大学教授计算机科学课程。他获得了应用科学(计算机科学)的学士学位。在他的空闲时间,他希望治好他的失眠症。
      其他参与者:

      JulieC.Meloni,i2iInteractive公司的技术总监,这是一家位于加利弗里亚LosAltos的多媒体公司。她从Web一问世以及出现GUIWeb浏览器时就致力于基于Web的应用开发。她编著过大量书籍,撰写过大量关于Web开发语言和数据的问题,其中包括销售情况良好的《SamsTeachYourselfPHP,MySQL,andApacheAllinOne》。
      AdamDeFields,Web应用开发方面,项目管理以及UI设计方面的顾问。他居住在密歇根的GrandRapids。在这个城市,有他自己的公司EmanationSystems,LLC,这是一家在2002年成立的公司。他参加过使用不同技术实现的Web开发项目,但是,他还是喜欢开发基于PHP/MySQL的项目。
      MarcWandschneider,一个软件开发方面的自由职业者,此外他还是作家和演讲者,经常在全球范围参与有意思的项目开发。最近,他的注意力集中在编写健壮和可扩展的Web应用。在2005年,他编写了一本名为《CoreWebApplicationProgramming withPHPandMySQL》的图书。此前,他是SWiK开源社区的主要开发人员。目前,Marc居住在北京,他将他的时间花在中文学习和编程。
  • 目录:
    读者反馈
    译者序
    前言
    作者简介
    第一篇使用PHP
    第1章PHP快速入门教程
    1.1开始之前:了解PHP
    1.2创建一个示例应用:Bob汽车零部件商店
    1.2.1创建订单表单
    1.2.2表单处理
    1.3在HTML中嵌入PHP
    1.3.1使用PHP标记
    1.3.2PHP语句
    1.3.3空格
    1.3.4注释
    1.4添加动态内容
    1.4.1调用函数
    1.4.2使用date()函数
    1.5访问表单变量
    1.5.1简短、中等以及长风格的表单变量
    1.5.2字符串的连接
    1.5.3变量和文本
    1.6理解标识符
    1.7检查变量类型
    1.7.1PHP的数据类型
    1.7.2类型强度
    1.7.3类型转换
    1.7.4可变变量
    1.8声明和使用常量
    1.9理解变量的作用域
    1.10使用操作符
    1.10.1算术操作符
    1.10.2字符串操作符
    1.10.3赋值操作符
    1.10.4比较操作符
    1.10.5逻辑操作符
    1.10.6位操作符
    1.10.7其他操作符
    1.11计算表单总金额
    1.12理解操作符的优先级和结合性:
    1.13使用可变函数
    1.13.1测试和设置变量类型
    1.13.2测试变量状态
    1.13.3变量的重解释
    1.14根据条件进行决策
    1.14.1if语句
    1.14.2代码块
    1.14.3else语句
    1.14.4elseif语句
    1.14.5switch语句
    1.14.6比较不同的条件
    1.15通过迭代实现重复动作
    1.15.1while循环
    1.15.2for和foreach循环
    1.15.3do...while循环
    1.16从控制结构或脚本中跳出
    1.17使用可替换的控制结构语法
    1.18使用declare
    1.19下一章

    第2章数据的存储与检索
    2.1保存数据以便后期使用
    2.2存储和检索Bob的订单
    2.3文件处理
    2.4打开文件
    2.4.1选择文件模式
    2.4.2使用fopen()打开文件
    2.4.3通过FTP或HTTP打开文件
    2.4.4解决打开文件时可能遇到的问题
    2.5写文件
    2.5.1fwrite()的参数
    2.5.2文件格式
    2.6关闭文件
    2.7读文件
    2.7.1以只读模式打开文件:fopen()
    2.7.2知道何时读完文件:feof()
    2.7.3每次读取一行数据:fgets()、fgetss()和fgetcsv()
    2.7.4读取整个文件:readfile()、fpassthru()和file()
    2.7.5读取一个字符:fgetc()
    2.7.6读取任意长度:fread()
    2.8使用其他有用的文件函数
    2.8.1查看文件是否存在:file_exists()
    2.8.2确定文件大小:filesize()
    2.8.3删除一个文件:unlink()
    2.8.4在文件中定位:rewind()、fseek()和ftell()
    2.9文件锁定
    2.10更好的方式:数据库管理系统
    2.10.1使用普通文件的几个问题
    2.10.2RDBMS是如何解决这些问题的
    2.11进一步学习
    2.12下一章

    第3章使用数组
    3.1什么是数组
    3.2数字索引数组
    3.2.1数字索引数组的初始化
    3.2.2访问数组的内容
    3.2.3使用循环访问数组
    3.3使用不同索引的数组
    3.3.1初始化相关数组
    3.3.2访问数组元素
    3.3.3使用循环语句
    3.4数组操作符
    3.5多维数组
    3.6数组排序
    3.6.1使用sort()函数
    3.6.2使用asort()函数和ksort()函数对相关数组排序
    3.6.3反向排序
    3.7多维数组的排序
    3.7.1用户定义排序
    3.7.2反向用户排序
    3.8对数组进行重新排序
    3.8.1使用shuffle()函数
    3.8.2使用array_reverse()函数
    3.9从文件载入数组
    3.10执行其他的数组操作
    3.10.1在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev()
    3.10.2对数组的每一个元素应用任何函数:array_walk()
    3.10.3统计数组元素个数:count()、sizeof()和array_count_values()
    3.10.4将数组转换成标量变量:extract()
    3.11进一步学习
    3.12下一章

    第4章字符串操作与正则表达式
    4.1创建一个示例应用程序:智能表单邮件
    4.2字符串的格式化
    4.2.1字符串的整理:chop()、ltrim()和trim()
    4.2.2格式化字符串以便显示
    4.2.3格式化字符串以便存储:addslashes()和stripslashes()
    4.3用字符串函数连接和分割字符串
    4.3.1使用函数explode()、implode()和join()
    4.3.2使用strtok()函数
    4.3.3使用substr()函数
    4.4字符串的比较
    4.4.1字符串的排序:strcmp()、strcasecmp()和strnatcmp()
    4.4.2使用strlen()函数测试字符串的长度
    4.5使用字符串函数匹配和替换子字符串
    4.5.1在字符串中查找字符串:strstr()、strchr()、strrchr()和stristr()
    4.5.2查找子字符串的位置:strpos()、strrpos()
    4.5.3替换子字符串:str_replace()、substr_replace()
    4.6正则表达式的介绍
    4.6.1基础知识
    4.6.2字符集和类
    4.6.3重复
    4.6.4子表达式
    4.6.5子表达式计数
    4.6.6定位到字符串的开始或末尾
    4.6.7分支
    4.6.8匹配特殊字符
    4.6.9特殊字符一览
    4.6.10在智能表单中应用
    4.7用正则表达式查找子字符串
    4.8使用正则表达式分割字符串
    4.9比较字符串函数和正则表达式函数
    4.10进一步学习
    4.11下一章

    第5章代码重用与函数编写
    5.1代码重用的好处
    5.1.1成本
    5.1.2可靠性
    5.1.3一致性
    5.2使用require()和include()函数
    5.2.1文件扩展名和require()语句
    5.2.2使用require()制作Web站点的模版
    5.2.3使用auto_prepend_file和auto_append_file
    5.3在PHP中使用函数
    5.3.1调用函数
    5.3.2调用未定义的函数
    5.3.3理解字母大小写和函数名称
    5.4理解为什么要定义自己的函数
    5.5了解基本的函数结构
    5.5.1函数命名
    5.6使用参数
    5.7理解作用域
    5.8参数的引用传递和值传递
    5.9使用Return关键字
    5.9.1从函数返回一个值
    5.10实现递归
    5.10.1名称空间
    5.11进一步学习
    5.12下一章

    第6章面向对象的PHP
    6.1理解面向对象的概念
    6.1.1类和对象
    6.1.2多态性
    6.1.3继承
    6.2在PHP中创建类、属性和操作
    6.2.1类的结构
    6.2.2构造函数
    6.2.3析构函数
    6.3类的实例化
    6.4使用类的属性
    6.5使用private和public关键字控制访问
    6.6类操作的调用
    6.7在PHP中实现继承
    6.7.1通过继承使用private和protected访问修饰符控制可见性
    6.7.2重载
    6.7.3使用final关键字禁止继承和重载
    6.7.4理解多重继承
    6.7.5实现接口
    6.8类的设计
    6.9编写类代码
    6.10理解PHP面向对象新的高级功能
    6.10.1使用Per-Class常量
    6.10.2实现静态方法
    6.10.3检查类的类型和类型提示
    6.10.4克隆对象
    6.10.5使用抽象类
    6.10.6使用__call()重载方法
    6.10.7使用__autoload()方法
    6.10.8实现迭代器和迭代
    6.10.9将类转换成字符串
    6.10.10使用Reflection(反射)API
    6.11下一章

    第7章错误和异常处理
    7.1异常处理的概念
    7.2Exception类
    7.3用户自定义异常
    7.4Bob的汽车零部件商店应用程序的异常
    7.5异常和PHP的其他错误处理机制
    7.6进一步学习
    7.7下一章

    第二篇使用MySQL
    第8章设计Web数据库
    8.1关系数据库的概念
    8.1.1表格
    8.1.2列
    8.1.3行
    8.1.4值
    8.1.5键
    8.1.6模式
    8.1.7关系
    8.2如何设计Web数据库
    8.2.1考虑要建模的实际对象
    8.2.2避免保存冗余数据
    8.2.3使用原子列值
    8.2.4选择有意义的键
    8.2.5考虑需要询问数据库的问题
    8.2.6避免多个空属性的设计
    8.2.7表格类型的总结
    8.3Web数据库架构
    8.4进一步学习
    8.5下一章

    第9章创建Web数据库
    9.1使用MySQL监视程序
    9.2登录到MySQL
    9.3创建数据库和用户
    9.4设置用户与权限
    9.5MySQL权限系统的介绍
    9.5.1最少权限原则
    9.5.2创建用户:GRANT命令
    9.5.3权限的类型和级别
    9.5.4REVOKE命令
    9.5.5使用GRANT和REVOKE的例子
    9.6创建一个Web用户
    9.7使用正确的数据库
    9.8创建数据库表
    9.8.1理解其他关键字的意思
    9.8.2理解列的类型
    9.8.3用SHOW和DESCRIBE来查看数据库
    9.8.4创建索引
    9.9理解MySQL的标识符
    9.10选择列数据类型
    9.10.1数字类型
    9.10.2日期和时间类型
    9.10.3字符串类型
    9.11进一步学习
    9.12下一章

    第10章使用MySQL数据库
    10.1SQL是什么
    10.2在数据库中插入数据
    10.3从数据库中获取数据
    10.3.1获取满足特定条件的数据
    10.3.2从多个表中获取数据
    10.3.3以特定的顺序获取数据
    10.3.4分组与合计数据
    10.3.5选择要返回的行
    10.3.6使用子查询
    10.4更新数据库记录
    10.5创建后修改表
    10.6删除数据库中的记录
    10.7表的删除
    10.8删除整个数据库
    10.9进一步学习
    10.10下一章

    第11章使用PHP从Web访问MySQL数据库
    11.1Web数据库架构的工作原理
    11.2从Web查询数据库的基本步骤
    11.2.1检查与过滤用户输入数据
    11.2.2建立一个连接
    11.2.3选择使用的数据库
    11.2.4查询数据库
    11.2.5检索查询结果
    11.2.6从数据库断开连接
    11.3将新信息放入数据库
    11.4使用Prepared语句
    11.5使用PHP与数据库交互的其他接口
    11.5.1使用常规的数据库接口:PEARMDB2
    11.6进一步学习
    11.7下一章

    第12章MySQL高级管理
    12.1深入理解权限系统
    12.1.1user表
    12.1.2db表和host表
    12.1.3tables_priv表,columns_priv表和procs_priv表
    12.1.4访问控制:MySQL如何使用Grant表
    12.1.5更新权限:修改什么时候生效
    12.2提高MySQL数据库的安全性
    12.2.1从操作系统角度来保护MySQL
    12.2.2密码
    12.2.3用户权限
    12.2.4Web问题
    12.3获取更多关于数据库的信息
    12.3.1使用SHOW获取信息
    12.3.2使用DESCRIBE获取关于列的信息
    12.3.3用EXPLAIN理解查询操作的工作过程
    12.4数据库的优化
    12.4.1设计优化
    12.4.2权限
    12.4.3表的优化
    12.4.4使用索引
    12.4.5使用默认值
    12.4.6其他技巧
    12.5备份MySQL数据库
    12.6恢复MySQL数据库
    12.7实现复制
    12.7.1设置主服务器
    12.7.2执行初始的数据传输
    12.7.3设置一个/多个从服务器
    12.8进一步学习
    12.9下一章

    第13章MySQL高级编程
    13.1LOADDATAINFILE语句
    13.2存储引擎
    13.3事务
    13.3.1理解事务的定义
    13.3.2通过InnoDB使用事务
    13.4外键
    13.5存储过程
    13.5.1基本示例
    13.5.2局部变量
    13.5.3游标和控制结构
    13.6进一步学习
    13.7下一章

    第三篇电子商务与安全性
    第14章运营一个电子商务网站
    14.1我们要实现什么目标
    14.2考虑电子商务网站的类型
    14.2.1使用在线说明书公布信息
    14.2.2接收产品或服务的订单
    14.2.3提供服务和数字产品
    14.2.4为产品或服务增值
    14.2.5减少成本
    14.3理解风险和威胁
    14.3.1网络黑客
    14.3.2不能招揽足够的生意
    14.3.3计算机硬件故障
    14.3.4电力、通信、网络或运输故障
    14.3.5广泛的竞争
    14.3.6软件错误
    14.3.7不断变化的政府政策和税收
    14.3.8系统容量限制
    14.4选择一个策略
    14.5下一章

    第15章电子商务的安全问题
    15.1信息的重要程度
    15.2安全威胁
    15.2.1机密数据的泄露
    15.2.2数据丢失和数据破坏
    15.2.3数据修改
    15.2.4拒绝服务
    15.2.5软件错误
    15.2.6否认
    15.3易用性,性能、成本和安全性
    15.4建立一个安全政策
    15.5身份验证原则
    15.6加密技术基础
    15.6.1私有密钥加密
    15.6.2公有密钥加密
    15.6.3数字签名
    15.7数字证书
    15.8安全的Web服务器
    15.9审计与日志记录
    15.10防火墙
    15.11备份数据
    15.11.1备份常规文件
    15.11.2备份与恢复MySQL数据库
    15.12自然环境安全
    15.13下一章

    第16章Web应用的安全
    16.1处理安全性问题的策略
    16.1.1以正确心态为开始
    16.1.2安全性和可用性之间的平衡
    16.1.3安全监视
    16.1.4基本方法
    16.2识别所面临的威胁
    16.2.1访问或修改敏感数据
    16.2.2数据丢失或破坏
    16.2.3拒绝服务
    16.2.4恶意代码注入
    16.2.5服务器被攻破
    16.3了解与我们“打交道”的用户
    16.3.1破解人员
    16.3.2受影响机器的未知情用户
    16.3.3对公司不满的员工
    16.3.4硬件被盗
    16.3.5我们自身
    16.4代码的安全性
    16.4.1过滤用户输入
    16.4.2转义输出
    16.4.3代码组织
    16.4.4代码自身的问题
    16.4.5文件系统因素
    16.4.6代码稳定性和缺陷
    16.4.7执行引号和exec
    16.5Web服务器和PHP的安全性
    16.5.1保持软件的更新
    16.5.2查看php.ini文件
    16.5.3Web服务器配置
    16.5.4Web应用的商业主机服务
    16.6数据库服务器的安全性
    16.6.1用户和权限系统
    16.6.2发送数据至服务器
    16.6.3连接服务器
    16.6.4运行服务器
    16.7保护网络
    16.7.1安装防火墙
    16.7.2使用隔离区域(DMZ)
    16.7.3应对DoS和DDoS攻击
    16.8计算机和操作系统的安全性
    16.8.1保持操作系统的更新
    16.8.2只运行必须的软件
    16.8.3服务器的物理安全性
    16.9灾难计划
    16.10下一章

    第17章使用PHP和MySQL实现身份验证
    17.1识别访问者
    17.2实现访问控制
    17.2.1保存密码
    17.2.2密码的加密
    17.2.3保护多个网页
    17.3使用基本身份验证
    17.4在PHP中使用基本身份验证
    17.5在Apache的.htaccess文件中使用基本身份验证
    17.6使用mod_auth_mysql身份验证
    17.6.1安装mod_auth_mysql
    17.6.2使用mod_auth_mysql
    17.7创建自定义身份验证
    17.8进一步学习
    17.9下一章

    第18章使用PHP和MySQL实现安全事务
    18.1提供安全的事务处理
    18.1.1用户机器
    18.1.2Internet
    18.1.3我们的系统
    18.2使用加密套接字层(SSL)
    18.3屏蔽用户的输入
    18.4提供安全存储
    18.5存储信用卡号码
    18.6在PHP中使用加密技术
    18.6.1安装GPG
    18.6.2测试GPG
    18.7进一步学习
    18.8下一章

    第四篇PHP的高级技术
    第19章与文件系统和服务器的交互
    19.1文件上载
    19.1.1文件上载的HTML代码
    19.1.2编写处理文件的PHP
    19.1.3避免常见上载问题
    19.2使用目录函数
    19.2.1从目录读取
    19.2.2获得当前目录的信息
    19.2.3创建和删除目录
    19.3与文件系统的交互
    19.3.1获取文件信息
    19.3.2更改文件属性
    19.3.3创建、删除和移动文件
    19.4使用程序执行函数
    19.5与环境变量交互:getenv()和putenv()
    19.6进一步学习
    19.7下一章

    第20章使用网络函数和协议函数
    20.1了解可供使用的协议
    20.2发送和读取电子邮件
    20.3使用其他Web站点的数据
    20.4使用网络查找函数
    20.5备份或镜像一个文件
    20.5.1使用FTP备份或镜像一个文件
    20.5.2上传文件
    20.5.3避免超时
    20.5.4使用其他的FTP函数
    20.6进一步学习
    20.7下一章

    第21章日期和时间的管理
    21.1在PHP中获取日期和时间
    21.1.1使用date()函数
    21.1.2使用UNIX时间戳
    21.1.3使用getdate()函数
    21.1.4使用checkdate()函数检验日期有效性
    21.1.5格式化时间戳
    21.2在PHP日期格式和MySQL日期格式之间进行转换
    21.3在PHP中计算日期
    21.4在MySQL中计算日期
    21.5使用微秒
    21.6使用日历函数
    21.7进一步学习
    21.8下一章

    第22章创建图像
    22.1在PHP中设置图像支持
    22.2理解图像格式
    22.2.1JPEG
    22.2.2PNG
    22.2.3WBMP
    22.2.4GIF
    22.3创建图像
    22.3.1创建一个背景图像
    22.3.2在图像上绘图或打印文本
    22.3.3输出最终图形
    22.3.4清理
    22.4在其他页面中使用自动生成的图像
    22.5使用文本和字体创建图像
    22.5.1创建基本画布
    22.5.2将文本调整到适合按钮
    22.5.3放置文本
    22.5.4将文本写到按钮上
    22.5.5完成
    22.6绘制图像与用图表描绘数据
    22.7使用其他的图像函数
    22.8进一步学习
    22.9下一章

    第23章在PHP中使用会话控制
    23.1什么是会话控制
    23.2理解基本的会话功能
    23.2.1什么是cookie
    23.2.2通过PHP设置cookie
    23.2.3在会话中使用cookie
    23.2.4存储会话ID
    23.3实现简单的会话
    23.3.1开始一个会话
    23.3.2注册一个会话变量
    23.3.3使用会话变量
    23.3.4注销变量与销毁会话
    23.4创建一个简单的会话例子
    23.5配置会话控制
    23.6通过会话控制实现身份验证
    23.7进一步学习
    23.8下一章

    第24章其他有用的特性
    24.1使用eval()函数对字符串求值
    24.2终止执行:die和exit
    24.3序列化变量和对象
    24.4获取PHP环境信息
    24.4.1找到所加载的PHP扩展部件
    24.4.2识别脚本所有者
    24.4.3确定脚本最近修改时间
    24.5暂时改变运行时环境
    24.6源代码加亮
    24.7在命令行中使用PHP
    24.8下一章

    第五篇创建实用的PHP和MySQL项目
    第25章在大型项目中使用PHP和MySQL
    25.1在Web开发中应用软件工程
    25.2规划和运行Web应用程序项目
    25.3重用代码
    25.4编写可维护代码
    25.4.1编码标准
    25.4.2分解代码
    25.4.3使用标准的目录结构
    25.4.4文档化和共享内部函数
    25.5实现版本控制
    25.6选择一个开发环境
    25.7项目的文档化
    25.8建立原型
    25.9将逻辑和内容分离
    25.10优化代码
    25.10.1使用简单优化
    25.10.2使用Zend产品
    25.11测试
    25.12进一步学习
    25.13下一章

    第26章调试
    26.1编程错误
    26.1.1语法错误
    26.1.2运行时错误
    26.1.3逻辑错误
    26.2使用变量帮助调试
    26.3错误报告级别
    26.4改变错误报告设置
    26.5触发自定义错误
    26.6巧妙地处理错误
    26.7下一章

    第27章建立用户身份验证机制和个性化设置
    27.1解决方案的组成
    27.1.1用户识别和个性化设置
    27.1.2保存书签
    27.1.3推荐书签
    27.2解决方案概述
    27.3实现数据库
    27.4实现基本的网站
    27.5实现用户身份验证
    27.5.1注册
    27.5.2登录
    27.5.3登出
    27.5.4修改密码
    27.5.5重设遗忘的密码
    27.6实现书签的存储和检索
    27.6.1添加书签
    27.6.2显示书签
    27.6.3删除书签
    27.7实现书签推荐
    27.8考虑可能的扩展
    27.9下一章

    第28章创建一个购物车
    28.1解决方案的组成
    28.1.1创建一个在线目录
    28.1.2在用户购买商品的时候记录购买行为
    28.1.3实现一个付款系统
    28.1.4创建一个管理界面
    28.2解决方案概述
    28.3实现数据库
    28.4实现在线目录
    28.4.1列出目录
    28.4.2列出一个目录中的所有图书
    28.4.3显示图书详细信息
    28.5实现购物车
    28.5.1使用show_cart.php脚本
    28.5.2浏览购物车
    28.5.3将物品添加到购物库
    28.5.4保存更新后的购物车
    28.5.5打印标题栏摘要
    28.5.6结账
    28.6实现付款
    28.7实现一个管理界面
    28.8扩展该项目
    28.9使用一个已有系统
    28.10下一章

    第29章创建一个基于Web的电子邮件服务系统
    29.1解决方案的组成
    29.1.1电子邮件协议:POP3和IMAP
    29.1.2PHP对POP3和IMAP的支持
    29.2解决方案概述
    29.3建立数据库
    29.4了解脚本架构
    29.5登录与登出
    29.6建立账户
    29.6.1创建一个新账户
    29.6.2修改已有账户
    29.6.3删除账户
    29.7阅读邮件
    29.7.1选择账户
    29.7.2查看邮箱内容
    29.7.3阅读邮件消息
    29.7.4查看消息标题
    29.7.5删除邮件
    29.8发送邮件
    29.8.1发送一则新消息
    29.8.2回复或转发邮件
    29.9扩展这个项目
    29.10下一章

    第30章创建一个邮件列表管理器
    30.1解决方案的组成
    30.1.1建立列表和订阅者数据库
    30.1.2上载新闻信件
    30.1.3发送带附件的邮件
    30.2解决方案概述
    30.3建立数据库
    30.4定义脚本架构
    30.5实现登录
    30.5.1新账户的创建
    30.5.2登录
    30.6用户函数的实现
    30.6.1查看列表
    30.6.2查看邮件列表信息
    30.6.3查看邮件列表存档
    30.6.4订阅与取消订阅
    30.6.5更改账户设置
    30.6.6更改密码
    30.6.7登出
    30.7管理功能的实现
    30.7.1创建新的邮件列表
    30.7.2上载新的新闻信件
    30.7.3多文件上载的处理
    30.7.4预览新闻信件
    30.7.5发送邮件
    30.8扩展这个项目
    30.9下一章

    第31章创建一个Web论坛
    31.1理解流程
    31.2解决方案的组成
    31.3解决方案概述
    31.4数据库的设计
    31.5查看文章的树型结构
    31.5.1展开和折叠
    31.5.2显示文章
    31.5.3使用treenode类
    31.6查看单个的文章
    31.7添加新文章
    31.8添加扩充
    31.9使用一个已有的系统
    31.10下一章

    第32章生成PDF格式的个性化文档
    32.1项目概述
    32.1.1评估文档格式
    32.2解决方案的组成
    32.2.1问题与回答系统
    32.2.2文档生成软件
    32.3解决方案概述
    32.3.1提问
    32.3.2给答题评分
    32.3.3生成RTF证书
    32.3.4从模板生成PDF证书
    32.3.5使用PDFlib生成PDF文档
    32.3.6使用PDFlib的一个“HelloWorld”程序
    32.3.7用PDFlib生成证书
    32.4处理标题的问题
    32.5扩展该项目
    32.6下一章

    第33章使用XML和SOAP来连接Web服务
    33.1项目概述:使用XML和Web服务
    33.1.1理解XML
    33.1.2理解Web服务
    33.2解决方案的组成
    33.2.1使用Amazon的Web服务接口
    33.2.2XML的解析:REST响应
    33.2.3在PHP中使用SOAP
    33.2.4缓存
    33.3解决方案概述
    33.3.1核心应用程序
    33.3.2显示特定种类的图书
    33.3.3获得一个AmazonResultSet类
    33.3.4使用REST发送和接收请求
    33.3.5使用SOAP发送和接收请求
    33.3.6缓存请求返回的数据
    33.3.7创建购物车
    33.3.8到Amazon付账
    33.4安装项目代码
    33.5扩展这个项目
    33.6进一步学习

    第34章使用Ajax构建Web2.0应用
    34.1Ajax是什么?
    34.1.1HTTP请求和响应
    34.1.2DHTML和XHTML
    34.1.3级联样式单(CSS)
    34.1.4客户端编程
    34.1.5服务器端编程
    34.1.6XML和XSLT
    34.2Ajax基础
    34.2.1XMLHTTPRequest对象
    34.2.2与服务器通信
    34.2.3处理服务器响应
    34.2.4整合应用
    34.3在以前的项目添加Ajax元素
    34.3.1在PHPBookmark应用中添加Ajax元素
    34.4进一步学习
    34.4.1进一步了解文档对象模型(DOM)
    34.4.2Ajax应用可用的JavaScript函数库
    34.4.3Ajax开发人员网站

    第六篇附录
    附录A安装PHP及MySQL
    附录BWeb资源
    第1章PHP快速入门教程
    第2章数据的存储与检索
    第3章使用数组
    第4章字符串操作与正则表达式
    第5章代码重用与函数编写
    第6章面向对象的PHP
    第7章错误和异常处理
查看详情
系列丛书 / 更多
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
Objective-C 2.0程序设计
[美]科施恩 著;张波 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
软件测试实用技术与常用模板
李龙 著
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
OpenGL编程指南(原书第7版)
[美]施瑞奈尔 著;李军 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
PHP和MySQL Web开发
威利、武欣 著
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
测试驱动的面向对象软件开发
[美]弗里曼、[美]普雷斯 著;王海鹏 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
Windows高级调试
[美]赫瓦特 著;聂雪军 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
成功的软件开发(原书第2版)
多纳尔德森 编;刘列励 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
重构:Ruby版
[美]菲尔德斯 著;徐旭铭 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
PHP和MySQL Web应用开发核心技术
温施耐德 著
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
测试驱动的JavaScript开发
[美]Christian Johansen 著;赵勇 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
Windows并发编程指南
[美]杜飞(Duffy J.) 著;聂雪军 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
Oracle PL/SQL实例精解
[美]罗森维格(Gary Rosenzweig) 著
您可能感兴趣 / 更多
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
南方理论:社会科学知识的全球动态
[澳]瑞文·康奈尔
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
海外中国研究·性别、政治与民主:近代中国的妇女参政
[澳]李木兰 著;方小平 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
英语合作学习活动
[澳]杨宏智 (澳)沈惠忠
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
《想当主人的金斯利》(2024年百班千人寒假书单 一年级推荐阅读)
[澳]加布里埃尔·埃文斯 图/文
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
公共管理导论(第五版)(公共行政与公共管理经典译丛)
[澳]欧文·E.休斯(Owen E. Hughes) 著;张成福 杨崇祺 赵弘毅 郭梓焱 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
超越英雄之旅 影视人物弧线创作指南
[澳]安东尼·木林斯
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
乳品加工新兴技术(现代食品科学技术著作丛书)
[澳]大卫迪塔·达努塔(Nivedita Datta);[美]皮吉 .M.汤姆索亚(Peggy M. Tomasula)
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
凤凰文库设计理论研究系列-数字物质性:设计和人类学
[澳]莎拉·平克;[西]埃丽森达·阿尔德沃尔;[西]黛博拉· 兰泽尼
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
疯狂树屋39层(上) 很久很久以前机
[澳]安迪·格里菲斯
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
阿格妮丝·赫勒(历史旋涡中的道德主义者)/东欧新马克思主义伦理思想研究丛书/哈尔滨工程大学人文社
[澳]约翰·格里姆雷 著;马建青 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
非传统营销Ⅱ 系统、实战、深度,风靡全球品牌届的颠覆性营销书籍
[澳]珍妮·罗曼纽克(Jenni Romaniuk),[澳]拜伦·夏普(Byron Sharp) 著,麦青(Mandy) 译
PHP和MySQL Web开发(原书第4版):PHP and MySQL Web Development, Fourth Edition
失物招领蒲蒲兰绘本3-6岁
[澳]陈志勇 著;马爱农 译