您好,欢迎光临有路网!
PHP动态网页设计(第2版)
QQ咨询:
有路璐璐:

PHP动态网页设计(第2版)

  • 作者:[英] David Powers 陈宝国 盛海艳 张冠楠
  • 出版社:人民邮电出版社
  • ISBN:9787115284303
  • 出版日期:2012年07月01日
  • 页数:409
  • 定价:¥69.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    作为运行于服务器端并完全跨平台的嵌入式脚本编程语言,PHP吸取了众多编程语言的优点,成为众多网页设计人员制作动态网页的**语言。
    本书作者是Web开发专家,深谙如何让只有很少甚至没有编程经验的Web开发人员获得自信,并通过研究和调整代码达到设计要求。作者在上一版的基础上进行了全面更新,介绍了*前沿的技术,提供了编写**代码的*佳方法。这些代码可以轻松部署到多个网站。此外,本书还新增了两章内容,分别介绍了PHP 5.2和PHP 5.3的日期和时间类,以及MySQL 5.5的默认存储引擎InnoDB外键约束。
    本书代码示例丰富,但绝不是一系列现成可用脚本的罗列。它解释了每个代码段的作用,以及为什么需要按特定方式使用这些代码,帮助读者快速了解PHP和数据库设计基础。通过本书,你将能够顺利构建PHP类,执行上传文件、创建缩略图、检查密码强度等任务。
    本书语言清晰、**突出,针对Web设计师和开发人员日常工作中遇到的难题给出了*实际的解决方案,将帮助PHP零基础的读者迅速入门、进阶。
    文章节选
    PHP是什么——
    我为什么要关注它
    关于PHP,大多数人首先想要知道的问题之一就是这个首字母缩写词代表什么。而当他们知道了之后,一定会觉得它非常枯燥无趣。正式的说法是,PHP表示PHP: Hypertext Preprocessor(超文本预处��语言)。这是一个晦涩的名字,它给人留下的印象是专门供那些极客使用的。但这绝不是事实。
    PHP是一种脚本语言,它通过以下方式为网站注入动态特性:
    ? 直接将反馈从网站发送到邮箱中;
    ? 通过网页上传文件;
    ? 从较大的图像生成缩略图;
    ? 读写文件;
    ? 动态地显示和更新信息;
    ? 使用数据库显示和存储信息;
    ? 使网站支持搜索。
    通过阅读本书,你将能实现所有这些功能。PHP很容易学习;它与平台无关,因此相同的代码可以在Windows、Mac OS X和Linux上运行。而且在PHP开发中需要用到的所有软件都是开源的,因此可以免费使用。几年以前,在PHP General邮件列表(http://news.php.net/php.general)上出现了一次有趣的讨论,是关于改变PHP缩写词的含义的。这些提议中包括Positively Happy People(积极快乐的人)和Pretty Happy Programmers(快乐的程序员)。本书的目的就在于帮助你实际运用PHP——并且在这个过程中理解是什么使得PHP程序员如此快乐。
    本章将介绍以下内容:
    ? PHP如何发展成为动态网站中应用*广泛的技术;
    ? PHP如何实现动态网页;
    ? 学习PHP有多难,或多简单;
    ? PHP是否**;
    ? 你需要什么软件来编写PHP。
    1.1 PHP的发展史
    尽管PHP如今已成为使用得*广泛的动态网站创建技术,但在1995年刚出现的时候,它的野心不是特别大,而且名字也与现在不同。它*初名为Personal Home Page Tools(个人主页工具,PHP工具),它的目标之一就是通过一个在线表单收集信息并将其显示在网页上,来创建一个留言簿。不久之后,又增加了与数据库通信的功能。1998年推出PHP 3时,人们决定将Personal Home Page从它的名字中去除,因为它听起来像是为业余爱好者设计的,无法准确反映它增加的各种复杂的特征。PHP 3被形容为“一种对程序员非常友好的脚本语言,适合只有极少或没有编程经验的人以及经验丰富但需要快速完成任务的Web开发人员使用。”
    从那时开始,PHP又有了进一步的发展,PHP 5中为面向对象编程(OOP)增加了大量的支持。不过PHP的巨大吸引力之一仍然在于它保持了*初的本色。你不需要学习许多理论就能够开始编写有用的脚本,同时也能相信这门技术能开发出具有行业水准的应用程序。PHP推动了一些十分流行的内容管理系统(CMC)的发展,例如Drupal(http://drupal.org/)、Joomla!(www. joomla.org)和WordPress(http://wordpress.org/)。一些非常流行的网站,包括Facebook(www.facebook.com)和Wikipedia(www.wikipedia.org),也使用了PHP。
    从庞大的用户群、广泛受支持和大量**特性这些意义上讲,PHP如今被认为是一种成熟的技术。新的特性还在不断增加,尽管只有那些**用户才对它们感兴趣。
    在写作本书时,*新的版本是PHP 5.3。当意识到*初的目标定得过高时,PHP 6的开发在2010年年初的时候就被无限期地搁置了。
    本书的**在于现在可以使用的代码,而不是未来某个不确定的时间将会使用的代码。我们还注意避免使用已经被弃用的功能——换句话说,那些被标记为从下一个PHP的主版本中删除的功能。
    1.2 PHP是如何使页面实现动态效果的
    PHP*初是被设计成嵌入网页的HTML中的,这也是它仍被经常使用的方式。例如,如果你想要把当前年份显示到一个版权声明中,可以把以下代码加入页脚中:
    <p>&copy; <?php echo date('Y'); ? >PHP Solutions</p>
    在一个支持PHP的Web服务器中,<?php和? >标记之中的代码是自动处理的,并且像下面这样显示年份:

    这只是一个简单的例子,但是它说明了使用PHP的一些好处。
    ? 你可以不必担心需要更新版权声明,尽情地享受新年派对吧。任何在午夜来临之后访问你的网站的人都会看到正确的年份。
    ? 与使用JavaScript显示日期不同,这个过程是在Web服务器上完成的,所以它并不依赖于用户的浏览器是否启用JavaScript。
    ? 日期是由Web服务器计算出来的,因此如果用户电脑上的时间设置错误的话它也不会受到影响。
    尽管像这样将PHP代码嵌入HTML中很方便,但这通常会导致重复输入相同的代码,这很麻烦而且会导致错误。还会使得网页难于维护,尤其是当你开始使用更加复杂的PHP代码时。因此,通常的做法是将许多动态的代码储存在独立的文件中,并且使用PHP通过这些不同组件来生成页面。这些独立的文件,或通常称为包含文件(include file),可以只包含PHP,或只包含HTML,或是这两种都包含。
    开始时可能很难适应这种操作方式,但是它的效率要高得多。举一个简单的例子,你可以将网站的导航菜单放入一个包含文件中,并且使用PHP使其包含在每个页面中。但凡需要对这个菜单进行任何修改时,你都只需编辑一个文件——包含文件,所做的修改就会自动地体现在每一个包含这个菜单的页面中。想象一下在一个由数十个页面组成的网站中,这将会节省多少时间。
    在普通的HTML页面中,Web开发人员在设计时就将内容固定在页面中并且上传到Web服务器上。当有人访问这个页面时,Web服务器只是发送这个HTML和其他相关内容,如图像和样式表。这是一种简单的事务——请求来自于浏览器,固定的内容由服务器发送回来。当你使用PHP创建网页时,还有许多其他的过程。图1-1显示了都发生了什么。

    图1-1 Web服务器动态地生成每个PHP页面来响应请求
    访问用PHP构建的网站时,它会启动以下事件序列。
    (1) 浏览器向Web服务器发送一个请求。
    (2) Web服务器将请求提交给嵌入到服务器中的PHP引擎。
    (3) PHP引擎处理代码。在许多情况下,在生成页面之前可能还会查询数据库。
    (4) 服务器将完成的页面传回给浏览器。
    这个过程通常只需要零点零几秒,因此PHP网站的访问者感觉不到任何的延迟。由于每个页面都是单独生成的,PHP页面可以响应用户输入,当用户登录时显示不同的内容或显示出数据库搜索的结果。
    创建能够独立思考的页面
    PHP是一种服务器端语言(server-side language)。PHP代码保留在Web服务器上。在处理完成后,服务器只发送脚本的输出。通常这是HTML,但是PHP也可以用于生成其他的Web语言,如XML(Extensible Markup Language,可扩展标记语言)。
    PHP允许我们将逻辑引入网页中。这种逻辑来源有两种。其中一些决策是基于PHP从服务器收集的信息:日期、时间、星期几、页面的URL中的信息,等等。如果是星期三,就显示星期三的电视节目表。其他时候,决策则是基于PHP从在线表单中提取的用户输入。如果你在网站上注册,则显示你的个人信息,等等。
    结果,可以通过一个脚本来创建无数种输出。例如,如果你访问我的博客http://foundation- php.com/blog/(如图1-2所示),并且单击各种内部链接,你看到的通常是显示不同内容的同一个页面。诚然,我往往总是写一些相同类型的主题,但这是我的错误,而不是PHP的。

    图1-2 博客是*适合使用PHP的站点
    1.3 使用和学习PHP有多难
    PHP不是什么复杂高深的技术,但同时,你也不要期望能够在5分钟之内就成为专家。对于新手来说,*大的不适应可能就是PHP的容错度比浏览器对HTML的容错度要低得多。在HTML中如果漏掉了一个结束标签,大多数的浏览器仍然会显示该页面。在PHP中,如果你漏掉了一个结束引号、分号或大括号,将会像图1-3所显示的那样得到一条错误消息。这不仅仅是PHP的一个特性,所有的服务器端技术都是如此,包括ASP、ASP.NET和ColdFusion。

    图1-3 像PHP这样的服务器端语言无法容忍大多数的编码错误
    如果你是使用可视化设计工具(如Adobe Dreamweaver或Microsoft Expression Web)的网页设计人员或开发人员,并且从不留意基础代码,那么是时候该反思一下你的方法了。将PHP和结构差的HTML混合在一起有可能会导致一些问题。PHP利用循环来执行重复性任务,如显示数据库搜索的结果。一个循环(loop)重复同一段代码(代码通常同时包含PHP和HTML),直至所有的结果都显示出来。如果你将循环放到了错误的位置,或者HTML的结构差,那么页面就有可能像用纸牌搭的房子一样倒塌。如果你还不习惯这样做,使用W3C(World Wide Web Consortium)的Markup Validation Service(http://validator.w3.org/unicorn)来检查你的页面是一个不错的主意。
    W3C是一个国际组织,它负责制定标准(如HTML和CSS),并制定保证Web长期发展的指导方针。它由World Wide Web的创立者Tim Berners-Lee所领导。要想了解W3C的使命,参见www.org/Consortium/mission。
    1.3.1 是否可以只复制和粘贴代码
    复制这本书中的代码没什么错,这正是它们存在的目的。复制是我们小时候都学习过的方法,但我们大多数人都会摆脱模仿的阶段,我们会提出问题并且开始亲自实验。我并不打算用一些对于网页没有直接价值的乏味的练习题来教你学习PHP,本书就是要让你可以直接将新获得的知识运用到实际项目中。同时,我会解释代码是用来做什么的以及它为什么出现在那里。即使不能准确地理解它的工作原理,你也会获得足够的知识来了解代码的哪个部分适合你的需要,哪个部分*好不要去理会。
    PHP是一个提供了大量强大功能的工具箱。它拥有数千个内置函数,可以执行各种任务,如将文本转换成大写,从完整尺寸的图像生成缩略图,或连接到数据库。真正的强大之处在于将这些函数以不同的方式组合使用,并且添加进你自己的条件逻辑。为了从本书中学到更多内容,你需要用你在书中学到的工具进行实验,并且提出你自己的解决方案。
    1.3.2 PHP的**性
    PHP就像是你家中的电或菜刀:如果正确使用,它是非常**的;如果不负责任地操作,它就会造成许多伤害。本书第1版的灵感之一就来自2005年年末接二连三爆发的恶意攻击。这些攻击利用了电子邮件脚本的一个漏洞,将网站变成了垃圾邮件中继。没有几个人免遭危害。我当然也未能幸免,但是意识到这个问题以后,我修补了漏洞,并及时制止了这些恶意攻击。不过,每天都有人发送紧急的请求到在线论坛上以寻求帮助。即使被告知如何处理这种问题时,他们的回复甚至变得更加抓狂。许多人承认他们完全不了解他们在网站中使用的代码。有些人把创建网站当成一种业余爱好,这似乎是可以理解的,但是这些人中有许多都是替客户创建网站的“专业人士”。当这些客户们的邮箱开始充满垃圾邮件时,他们自然就会很不高兴。当主机托管公司由于无法忍受服务器上的不**脚本而将客户的域名禁用时,他们毫无疑问会更加不高兴。
    这个故事的寓意不在于PHP是不**的;也不在于每个人都需要成为使用PHP的**专家。重要的是了解PHP**性的基本原则:在处理用户输入之前必须进行检查。你会发现这将成为贯穿本书始终的主题。只要付出很少的努力,大多数的**风险就能够被消除。
    *令人担心的方面可能是在这个问题被**揭示出来五年多之后,我仍然能看到许多人在使用不**的邮件脚本。保护自己的*佳方法就是了解你正在使用的代码。即使你不能自己解决问题,也可以实施由脚本的编写者或其他专家建议的补救措施。
    1.4 用什么软件来编写PHP
    严格来讲,你不需要任何特殊的软件来编写PHP脚本。PHP代码是纯文本,可以在任何文本编辑器中创建,如Windows中的记事本或Mac OS X中的TextEdit。尽管如此,使用纯文本编辑器,你仍需要做好应付各种麻烦的准备。你当前的Web开发程序可能已经支持PHP。如果不支持,有许多程序可供选择,有收费的也有免费的,它们都设计了加速开发过程的功能。
    选择PHP编辑器应注意的几个方面
    如果代码中出现错误,页面可能永远不会像浏览器那样还会呈现出来,你所能看到的只有一条错误消息。你应该选择一个具有下述功能的脚本编辑器。
    ? PHP语法检查:过去仅能在昂贵的专用程序中看到该功能,但是现在它已经成为一些免费程序中的一个功能。语法检查器在你输入时对代码进行监视并高亮显示错误,这节省了大量的时间并避免了很多麻烦。
    ? PHP语法着色:根据代码作用的不同,以不同的颜色来高亮显示它们。如果代码显示的颜色不正确,这就是一个明确的信号,提示你出错了。
    ? PHP代码提示:PHP有如此多的内置函数,即使经验丰富的用户要想记住如何使用它们也是很困难的。许多脚本编辑器自动显示工具提示来提醒一段特殊代码是如何工作的。
    ? 行编号:迅速地找到某一行会使得排错更简单。
    ? 自动匹配括号功能:圆括号(())、方括号([ ])和花括号({})必须总是成对出现。我们很容易忘记结束括号。所有**的脚本编辑器都能够帮助找到配对的括号、中括号或大括号。
    下面的部分介绍了一些可以选择的脚本编辑器。它并不是一份详尽的清单,而只是根据我个人的经验加以介绍。
    1. 带有PHP支持的通用Web开发工具
    用于创建网站的两个应用*广泛的集成开发环境(IDE)Adobe Dreamweaver (www.adobe. com/products/dreamweaver/)和Microsoft Expression Web(www.microsoft.com expression/produts/ web_overview.aspx)具有对PHP的内置支持。
    ? Dreamweaver CS5:Dreamweaver是一个**的符合标准的可视化编辑器。Dreamweaver CS5实现了一个全新水平的PHP支持,添加了语法检查、嵌入式文档(附有示例)和变量的自动完成。尤其有用的是能够在编辑PHP包含文件的同时使主页在工作区中可见(参见图1-4)。

    图1-4 Dreamweaver CS5支持编辑PHP包含文件的同时在Live View中查看结果
    ? Expression Web: Expression Web 2、3、4版本中的PHP支持水平类似于Dreamweaver旧版本中提供的支持水平——换句话说,即PHP核心功能中的语法着色、代码提示和行编号。在编写本书时,它还有一个重大缺陷:尚不支持语法检查的功能。
    2. 专用的脚本编辑器
    即使你不打算进行大量的PHP开发,也应该考虑使用一个专用的脚本编辑器(如果你的Web开发IDE不支持语法检查的话)。下述这些专用的脚本编辑器具备所有的必要功能,如语法检查和代码提示。它们还支持HTML和CSS,但是缺少Dreamweaver或Expression Web所提供的可视化显示。
    ? Zend Studio(www.zend.com/en/products/studio/):如果你真正把PHP开发看得十分重要,那么可以使用Zend Studio。Zend Studio是面向PHP功能*全面的IDE。它是由Zend公司创建的,这是一家由PHP开发的主要贡献者所经营的公司。Zend Studio可以在Windows、Mac OS X和Linux上运行。它的主要缺点就是成本,尽管这个价格包括12个月的免费升级和支持。
    ? PhpED(www.nusphere.com/products/phped.htm):提供三个可用的版本。作为一个初学者来说,花费*低的版本就拥有你需要的所有功能。如果你以后需要更加**的功能,可以升级到其他版本。PhpED只能在Windows上运行。
    ? PHP Development Tools(www.eclipse.org/pdt/):PDT实际上是Zend Studio的一个精简版,它的优势是免费。缺点是在写作本书的时候,几乎没有文档。它在Eclipse中运行,Eclipse是一个支持多种计算机语言的开源IDE。如果你已经在Eclipse中使用过其他语言,会发现它相对较容易使用。PDT在Windows、Mac OS X和Linux上运行,它既可以作为一个Eclipse插件也可以作为一个自动安装Eclipse和PDT插件的完整安装包。
    ? Komodo Edit(www.activestate.com/komodo-edit):这是用于PHP和许多其他流行计算机语言的一个免费、开源的IDE。它可以在Windows、Mac OS X和Linux中使用。它是Komodo IDE的一个精简版,Komodo IDE是一个拥有更**功能的付费程序。Komodo IDE的免费**版有独立的下载链接,该版本是有时间限制的,而Komodo Edit是没有时限的。
    1.5 继续学习
    本章仅简要介绍了PHP在为你的网站增添动态功能方面能够做些什么,以及你需要什么软件。使用PHP的**个阶段就是要建立一个测试环境。下一章将介绍在Windows和Mac OS X上建立测试环境的过程。
    目录
    目 录
    第1章 PHP是什么——我为什么要关注它 1
    1.1 PHP的发展史 2
    1.2 PHP是如何使页面实现动态效果的 2
    1.3 使用和学习PHP有多难 5
    1.3.1 是否可以只复制和粘贴代码 6
    1.3.2 PHP的**性 6
    1.4 用什么软件来编写PHP 6
    1.5 继续学习 8
    第2章 准备开始使用PHP 9
    2.1 检查网站是否支持PHP 9
    2.2 建立本地的测试环境需要什么条件 10
    2.3 在Windows上安装 11
    2.3.1 使Windows显示出文件扩展名 11
    2.3.2 选择Web服务器 11
    2.3.3 在Windows上安装XAMPP 12
    2.3.4 使用Microsoft Web PI安装PHP 15
    2.4 在Mac OS X上安装 17
    2.4.1 安装MAMP 18
    2.4.2 测试和配置MAMP 18
    2.5 检查PHP设置(Windows和Mac) 19
    2.6 去哪里找PHP文件 23
    2.7 下一步 24
    第3章 如何编写PHP脚本 25
    3.1 PHP概述 25
    3.1.1 通知服务器处理PHP 26
    3.1.2 在网页中嵌入PHP 26
    3.1.3 将PHP存储到外部文件中 27
    3.1.4 使用变量来表示变化的值 27
    3.1.5 用分号结束命令 29
    3.1.6 注释脚本 30
    3.1.7 使用数组存储多个值 31
    3.1.8 PHP内置的超全局数组 32
    3.1.9 了解何时使用引号 32
    3.1.10 做出判断 35
    3.1.11 进行比较 36
    3.1.12 为清晰起见,使用缩进和空格 37
    3.1.13 使用循环来执行重复性任务 37
    3.1.14 使用函数来执行预设置任务 37
    3.1.15 PHP的类和对象 38
    3.1.16 显示PHP输出 39
    3.1.17 了解PHP错误消息 40
    3.2 PHP:快速参考 42
    3.2.1 在现有的网站中使用PHP 42
    3.2.2 PHP中的数据类型 42
    3.2.3 使用PHP进行计算 43
    3.2.4 添加到现有的字符串 45
    3.2.5 引号及其他 45
    3.2.6 创建数组 48
    3.2.7 关于PHP的事实 50
    3.2.8 创建循环 54
    3.2.9 使用函数使代码模块化 56
    3.3 PHP快速查阅清单 58
    第4章 使用包含功能减轻工作负担 60
    4.1 包含来自外部文件的代码 61
    4.1.1 PHP include命令简介 61
    4.1.2 PHP在哪里查找包含文件 62
    4.1.3 为包含选择正确的文件扩展名 65
    4.1.4 创建具有可变内容的页面 73
    4.1.5 使用包含文件防止错误 80
    4.1.6 选择放置包含文件的位置 85
    4.1.7 调整include_path 86
    4.1.8 为什么不能使用相对于站点根目录的链接来包含文件 88
    4.1.9 使用包含时要考虑的**因素 88
    4.2 小结 89
    第5章 表单的使用 90
    5.1 PHP如何收集来自表单的信息 90
    5.1.1 理解post和get之间的区别 92
    5.1.2 利用PHP的超全局保证** 94
    5.1.3 删除表单输入中不需要的反斜杠 95
    5.2 处理和验证用户输入 96
    5.2.1 创建可重用的脚本 97
    5.2.2 当表单不完整时保存用户输入 101
    5.2.3 过滤潜在的攻击 103
    5.3 发送邮件 106
    5.3.1 **地使用其他邮件头部 106
    5.3.2 阻止垃圾邮件 113
    5.4 处理多选表单元素 116
    5.5 小结 122
    第6章 上传文件 123
    6.1 PHP如何处理文件上传 123
    6.1.1 检查服务器是否支持上传 124
    6.1.2 将文件上传字段添加到表单中 125
    6.1.3 理解$_FILES数组 126
    6.1.4 建立一个上传目录 127
    6.2 上传文件 129
    6.3 创建PHP文件上传类 131
    6.3.1 定义PHP类 132
    6.3.2 检查上传错误 137
    6.3.3 修改受保护的属性 140
    6.3.4 显式修改数据类型 144
    6.3.5 防止文件被覆盖 145
    6.4 上传多个文件 148
    6.5 在PHP 5.3和更高版本中使用命名空间 153
    6.6 使用上传类 154
    6.7 文件上传中要注意的问题 155
    6.8 小结 155
    第7章 使用PHP来管理文件 156
    7.1 检查PHP是否具有打开文件的权限 156
    7.1.1 影响文件访问的配置设置 157
    7.1.2 为本地测试创建文件存储文件夹 158
    7.2 读取和写入文件 158
    7.2.1 在单个操作中读取文件 158
    7.2.2 为读/写操作打开和关闭文件 164
    7.3 研究文件系统 170
    7.3.1 使用scandir()检查文件夹 171
    7.3.2 使用DirectoryIterator检查文件夹的内容 171
    7.3.3 使用RegexIterator限制文件类型 173
    7.4 访问远程文件 177
    7.4.1 使用新闻和其他RSS源 178
    7.4.2 使用SimpleXML 179
    7.5 创建下载链接 183
    7.6 小结 186
    第8章 生成缩略图 187
    8.1 检查服务器的功能 187
    8.2 动态操作图像 188
    8.3 在上传时自动调整图像的大小 204
    8.3.1 扩展一个类 204
    8.3.2 使用Ps2_ThumbnailUpload类 208
    8.4 小结 209
    第9章 有记忆功能的页面:简单登录和多页表单 210
    9.1 会话是什么以及它们是如何运行的 210
    9.1.1 创建PHP会话 212
    9.1.2 创建和销毁会话变量 213
    9.1.3 销毁会话 213
    9.1.4 重新生成会话ID 213
    9.1.5 “Headers already sent”错误 214
    9.2 使用会话来限制访问 214
    9.2.1 使用基于文件的身份验证 218
    9.2.2 使密码更** 224
    9.3 为会话设置时间限制 234
    9.4 通过多页表单传递信息 237
    9.5 小结 242
    第10章 MySQL入门 243
    10.1 为什么选择MySQL 243
    10.2 数据库如何存储信息 244
    10.2.1 主键如何工作 245
    10.2.2 使用主键和外键链接表 246
    10.2.3 把信息分解成小块 247
    10.2.4 良好的数据库设计要点 247
    10.3 通过图形界面使用MySQL 247
    10.4 建立phpsols数据库 250
    10.4.1 MySQL的命名规则 250
    10.4.2 使用phpMyAdmin创建新数据库 251
    10.4.3 创建特定于数据库的用户账户 251
    10.4.4 创建数据库表 253
    10.4.5 将记录插入到表中 256
    10.4.6 创建用于备份和数据传输的SQL文件 258
    10.5 在MySQL中选择正确的数据类型 260
    10.5.1 存储文本 261
    10.5.2 存储数值 261
    10.5.3 存储日期和时间 262
    10.5.4 存储预定义列表 262
    10.5.5 存储二进制数据 262
    10.6 小结 263
    第11章 用PHP和SQL连接MySQL 264
    11.1 检查远程服务器设置 264
    11.2 PHP如何与MySQL通信 265
    11.2.1 使用MySQL Improved扩展连接MySQL 266
    11.2.2 使用PDO连接MySQL 266
    11.2.3 PHP解决方案11-1:创建可重用的数据库连接程序 267
    11.2.4 从查询中查看结果数 268
    11.2.5 显示查询结果 271
    11.2.6 MySQL连接对比表 272
    11.3 使用SQL与数据库进行交互 273
    11.3.1 编写SQL查询 274
    11.3.2 优化SELECT查询所检索到的数据 275
    11.3.3 SQL注入的危险性 278
    11.4 小结 290
    第12章 创建动态在线图片库 292
    12.1 为什么不在数据库中储存图像 293
    12.2 规划图库 293
    12.3 把图片库元素转换为PHP 295
    12.4 构建动态元素 297
    12.4.1 通过查询字符串传递信息 298
    12.4.2 创建一个多列表 300
    12.4.3 逐页浏览长的记录集 302
    12.5 小结 308
    第13章 管理内容 309
    13.1 建立内容管理系统 309
    13.1.1 创建blog数据库表 310
    13.1.2 创建基本插入和更新表单 311
    13.1.3 插入新记录 312
    13.1.4 链接到更新和删除页面 316
    13.1.5 更新记录 318
    13.1.6 删除记录 326
    13.2 回顾4个基本的SQL命令 327
    13.2.1 SELECT 327
    13.2.2 INSERT命令 329
    13.2.3 UPDATE命令 330
    13.2.4 DELETE命令 330
    13.3 **性与错误消息 331
    13.4 小结 331
    第14章 格式化文本和日期 333
    14.1 显示文本节选 333
    14.1.1 提取固定数目的字符 333
    14.1.2 提取完整的单词 334
    14.1.3 提取**段 335
    14.1.4 提取完整的句子 337
    14.2 使用日期 339
    14.2.1 MySQL如何处理日期 340
    14.2.2 在MySQL中插入日期 343
    14.2.3 在PHP中处理日期 348
    14.3 小结 360
    第15章 从多个表中提取数据 362
    15.1 理解表的关系 362
    15.2 将图像链接到文章 364
    15.2.1 修改现有表的结构 364
    15.2.2 在表中插入外键 365
    15.2.3 从多个表中选择记录 368
    15.2.4 找到没有匹配外键的记录 372
    15.2.5 创建智能链接 374
    15.3 小结 374
    第16章 管理多个数据库表 375
    16.1 维护引用完整性 375
    16.2 将记录插入到多个表中 378
    16.2.1 创建交叉引用表 380
    16.2.2 获取上传图像的文件名 381
    16.2.3 调整插入表单来处理多个表 382
    16.3 更新和删除多个表中的记录 390
    16.3.1 更新交叉引用表中的记录 390
    16.3.2 执行删除操作时保持引用完整性 393
    16.3.3 创建具有外键约束的删除脚本 396
    16.3.4 创建没有外键约束的删除脚本 397
    16.4 小结 398
    第17章 使用数据库验证用户身份 399
    17.1 选择一种加密方法 399
    17.2 使用单向加密 400
    17.2.1 创建一个用于存储用户详细信息的表 400
    17.2.2 在数据库中注册新用户 400
    17.3 使用双向加密 408
    17.3.1 创建表来存储用户详细信息 408
    17.3.2 注册新用户 408
    17.3.3 使用双向加密的用户身份验证 409
    17.3.4 解密密码 410
    17.4 更新用户详细信息 411
    17.5 延伸学习 411
    编辑推荐语
    PHP畅销书,好评如潮?
    零起点学PHP典范之作?
    示例丰富,全面兼容PHP? 4和PHP 5

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外