《PHP程序设计》 第五章 中场一:数据库连接

2016-01-29 15:16 11 1 收藏

《PHP程序设计》 第五章 中场一:数据库连接,《PHP程序设计》 第五章 中场一:数据库连接

【 tulaoshi.com - PHP 】

       第五章 中场一:数据库连接
  
  前两章中集中介绍了PHP语言,现在停下来开始创建一个应用程序。在本章中将创建一个连接MySQL数据库的应用程序。
  
  在学习过前面两章之后,你肯定已经学会了怎样处理PHP内部数据,以及怎样编写语句和函数。下一步从逻辑上讲,应该到了学习如何用SQL(结构化查询语句)处理PHP的外部数据的时候了。但是,在开始学习这部分内容前,让我们暂时中断基本原理的学习,放松一下。
  让我带你一道探究PHP应用程序的开发历程。从字面意义上讲,每一个应用程序都应该是独特的,但是每一个应用程序也都能在此前的工作基础上,即一系列通用功能的基础上构建。我建议将这两项技术混合在一起。盲目地使用前人已编写好的功能,会剥夺在程序中加入新特色,还会阻止为提高函数的效率而去修改旧函数。从另一方面讲,使用已有函数意味着能更快的开发出应用程序。所以必须在这两个极端中把握好自己,才能成为一个优秀的程序设计员。
  
  注意:如果现在还对HTML不熟悉,那么现在就是开始学习的时间了。本书中假定你已经熟悉HTML了。如果还不熟悉HTML表格和表单的话,很快就会被搞糊涂的。
  
  5.1 开端
  每当开始一个新项目时,我喜欢从一个新的空目录开始。在这里,让我们把这个目录称为phpbook/ch05。当然,这个目录必须在Web服务器的根目录下。如果你是按照第一章的指令安装PHP的话,那么,Web服务器的根目录就应该为/usr/local/apache/htdocs。接着,我们将创建一个名为menu.php3的文件,其中包含有一个后台管理任务菜单,如清单5.1所示。
  
  清单5.1 menu.php3
  <?php require('common.inc'); ?>
  <?php affy_header('Administrative Menu') ?>
  <h1>Administrative Menu</h1>
  <ol>
  <li><a href="connect.php3">Creat Database
  Connection</a></li>
  </ol>
  <?php affy_footer() ?>
  
  在文件common.inc中包含对函数affy_header和affy_footer的定义。这些函数在本章中稍后还会出现。
  5.2 创建连接
  当点击Create Database Connect(创建数据库连接)联接时,将会执行connect.php3文件,该文件将尝试连接在第二章学习中安装的MySQL数据库服务器。
  清单5.2 显示了connect.php3文件使用用户名codebits和密码codebits尝试进行数据库连接,因为在安装MySQL时还没有创建该用户名,所以连接肯定失败。然而失败 -- 最起码在本例中 -- 却是一件好事,因为我们可以看看应该如何处理这个问题。图5.1给出了连接失败后将会显示的错误信息和表单。
  
  清单5.2 connect.php3
  
  Page 107 -108 清单 5.2
  
  
  Page 108 Figure 5.1
  
  图5.1 连接失败时的错误信息显示
  
  当数据库连接失败时,程序会给出一个错误信息提示和一个表单,用户可以在里面输入root用户的密码。就像在本章稍后讲的那样,有了root的密码,就可以创建名为codebits的用户。现在先跳过有关$arr_request数组的部分。
  当函数mysql_connect被调用且连接失败时,该函数通常会显示如下信息:
  
  Warnint: MySQL connection Failed: Access denied
  for user: 'codebits@localhost' (Using password: YES)
  
  绝大多数应用程序需要精确的控制显示的内容,尤其是高度图形化的应用程序。在函数mysql_connect前加上(@)符号将会抑制错误信息的显示。
  注意表单语句的action属性指定点击submit按钮时,将会执行connect.php3文件。这是一个递归程序的例子,也就是说允许PHP文件调用它自己。
  应用递归编程技术,可以将有关同一个主题的所有代码编制在同一个文件中。至于什么时候应该将函数组合成一个文件,或将程序分解成几个文件,这得凭经验。我的首要原则是:当实现一个特定功能所编的程序代码超过100行以上时,就要创建一个独立的文件。
  
  5.3 获取HTML表单信息
  即使输入一个密码并点击连接数据库,连接仍然会失败,原因是connect.php3还没有使用表单中的输入值去建立数据库连接。
  PHP引擎将每一个表单域放到一个叫做$HTTP_POST_VARS的数组中。在上述给出的例子中,数组有两个元素:username和password。在此程序中可以通过$HTTP_POST_VARS['username']和$HTTP_POST_VARS['password']访问表单信息。
  使用$HTTP_POST_

来源:http://www.tulaoshi.com/n/20160129/1495569.html

延伸阅读
  学习Delphi有一个星期了,Delphi是Pascal的派生,可是说学过pascal到学起来很容易,当然我学过VB(visual basic),当然相对来说比较熟悉这门语言,可是时间长了不学也忘记了好多,但是学习Delphi上手快多了,尤其是我现在学的这本书是关于Delphi数据库设计,学习的过程中好多当年学VB时候那些捆绑数据库控件比如:ADO等都浮现在脑海中...
Rendering with Meshes 翻译:claymanclayman_joe@yahoo.com.cn 定义Mesh 虽然有很多时候,你需要手动创建顶点和索引数据,但更普遍的情况是从外部的资源加载已有的顶点数据,比如从一个文件。通常我们使用.X文件来保存这些信息。在前一章里,代码的大部分都用来创建几何体了。对于简单的三角形和立方体来说这似乎是完全可行的,但设想假如用...
标签: PHP
       第三章 PHP中的数据处理      本章着重讲述PHP程序的内部数据,包括数字,变量和常量。程序中的数据由操作符来控制的,操作符告诉PHP对内部数据进行什么操作(如加、减等等)。PHP程序的外部数据包括文本文件和数据库,对外部数据的详细介绍请参考第六章“数据库和SQL”  ...
ODBC数据源 1. 什么是ODBC ODBC(Open Database Connectivity,开放式数据库互联),是目前国际上通用的数据库访问标准。 2. 什么是ODBC数据源 就是计算机上的ODBC配置和管理的工具,利用这个工具,用户就可以定制使用ODBC来连接数据库。 Oracle 9i客户机 VB程序连接数据库的过程分析 1. VB程序指定...
标签: Web开发
XSL条件IF    XSL可以用一个IF语句过滤来自XML文档的信息。      在哪里放置IF条件    现在来重新看看你已经看过多次的XML文档:       ?xml version="1.0"?       CATALOG       CD     ...

经验教程

537

收藏

60
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部