技术开发 频道

在PHP与DB2 9中使用Ajax:Xajax

  【IT168 技术】PHP 是常用于开发 Web 应用程序的一种脚本编制语言。 Asynchronous JavaScript and XML (Ajax) 则是组合 JavaScript、 Document Object Model (DOM) 和 XMLHttpRequest 技术,以提供客户机与服务器之间的动态交互的一种 Web 技术。有很多用于与 PHP 一起使用 Ajax 的 PHP 类库,Xajax 就是其中一个,它是开放源代码的、面向对象的 PHP 类库。在本文中,学习如何实现 PHP、Ajax 和 Xajax,以开发一个访问 IBM? DB2? 9 for Linux?, Unix?, and Windows? 的动态 Web 应用程序解决方案。

  简介

  目前,超过 40% 的 Web 应用程序使用 PHP 作为脚本编制语言。Asynchronous JavaScript and XML (Ajax) 是组合 JavaScript、 Document Object Model (DOM) 和 XMLHttpRequest 技术,以提供客户机与服务器之间的动态交互的一种 Web 技术。有很多用于与 PHP 一起使用 Ajax 的 PHP 类库,Xajax 就是其中一个,它是开放源代码的、面向对象的 PHP 类库,通过它可以在 PHP 中使用 Ajax。

  举个例子,假设有一名用户正在填写一份表单,以便在一个 Web 站点上注册。通常,只有在提交表单时才会检查表单数据的有效性。但是如果使用 Ajax,将使用服务器应用程序中的业务逻辑动态验证添加到表单的数据。 因此,不必将整个表单提交到服务器以检查表单中的数据是否有效。异步(Asynchronous)意味着 XMLHttpRequest 对象的 send() 方法可以立即返回,不必等待 HTTP 请求完成,而发出请求的 HTML/JavaScript 页面则可以继续进行其他的处理。因此,开发人员可以发现,当 XMLHttpRequest 对象异步地处理 HTTP 响应时,可以继续处理发出 XMLHttpRequest 请求的 HTML/JavaScript 页面。

  Xajax 概述

  Xajax 用于以 PHP 脚本编写的客户机应用程序和服务器端应用程序之间进行异步的通信。对于可能从客户机应用程序访问的服务器端的 PHP 函数,Xajax 为之生成 JavaScript 包装器函数。当一个客户机应用程序调用包装器函数时,会生成一个 XMLHttpRequest 对象,并将一个 XMLHttpRequest HTTP 请求发送到服务器。

  在服务器上,xajax 对象收到 XMLHttpRequest,并调用与 JavaScript 包装器函数对应的 PHP 函数。通过 Xajax 注册的 PHP 函数的默认请求类型是 POST。PHP 函数返回一个 XML 响应,后者由 xajax 对象返回到客户机应用程序。根据 XML 响应中的指示,Xajax 的 JavaScript 消息泵更新客户机输入页面的内容。Xajax 的一个特性可以确保只有已经被修改的数据才会被更新。

  要开始创建自己的 Web 应用程序,我们首先看看安装产品和创建数据库的步骤。然后,您就可以深入研究应用程序的创建。

  安装 DB2 for Linux, UNIX, and Windows

  用于 DB2 数据库的 PHP 扩展可以与 DB2 for Linux, UNIX, and Windows V8.2 或更高版本一起使用。下面的安装说明使用 DB2 EntERPrise 9 for Windows:

  下载 DB2 9 数据服务器(见 参考资料)。(本例使用的是 DB2 Enterprise 9,但实际上也可以使用其他版本的 DB2。)

  将 db2_v9_ese_win_32.zip 解压到一个目录。

  要安装 DB2,双击 C:DB2ESEimagesetup.exe 应用程序。

  在 IBM DB2 Setup Launchpad 中,单击 Install a Product。

  在 DB2 Enterprise Server 的标签中单击 Install New。这时会出现 DB2 Setup 向导。单击 Next。

  接受许可协议,然后单击 Next。

  选择一种安装类型(典型安装),然后单击 Next。

  选择 installation and response file creation(默认),然后单击 Next。

  选择一个安装文件夹(默认为 C:Program FilesIBMSQLLIB),然后单击 Next。

  指定用户名(db2)和密码(db2admin),然后单击 Next。

  DB2 实例 DB2 作为默认 DB2 实例被列出来。通过单击 Configure 按钮,可以为默认 DB2 实例配置服务名称和协议。默认服务名称为 db2c_DB2,默认端口为 5000。单击 Next。

  在 Prepare the DB2 tools 类别框架中选择默认设置,然后单击 Next。

  如有必要,设置通知,然后单击 Next。

  在 Enable operating system security for DB2 objects 中选择默认设置,然后单击 Next。

  单击 Finish 按钮安装数据库服务器。

  现在创建一个示例数据库。作为先决条件,将 DB2INSTANCE 环境变量设置为 DB2:选择 System Properties > Advanced > Environment Variables > System Variables。也可以在 DB2 命令窗口中使用以下命令来设置 DB2INSTANCE 环境变量:

  set DB2INSTANCE=DB2

  要创建一个示例数据库,在 DB2 First Steps 框架中选择 Database Creation。单击 Create SAMPLE Database 按钮。 也可以使用以下命令创建示例数据库:

  db2sampl

  使用以下 DB2 命令将 DB2 数据库 SAMPLE 注册为 ODBC 数据源:

  db2 catalog system odbc data source sample

  安装 PHP 和 Xajax

  Xajax 是一个 PHP 类库,因此首先下载和安装 PHP 5。PHP 5 可以安装在很多不同的 Web 服务器上。本文讨论在 Windows 上使用 Apache Web 服务器配置 PHP 5。

  下面是安装和配置 PHP 的步骤:

  下载 PHP 5.2.0 (见 参考资料)。

  将 PHP zip 文件解压到一个安装目录中(例如 C:/PHP)。

  下载和安装 Apache HTTP Server 2.0。

  在 PATH 环境系统变量中添加安装 PHP 5 的目录(C:/PHP)。

  将 C:/PHP 目录中的 php.init 文件修改为 php.ini。

  本文中的示例应用程序从 DB2 数据库中存取数据。您将使用 PHP PDO 扩展连接到 DB2 数据库。

  在 php.ini 配置文件中,需要通过指定 extension_dir = "./ext" 设置扩展目录。要激活 PDO 扩展,需要去掉 php.ini 文件中下面这一行前面的 ‘;’:

  extension=php_pdo.dll

  此外还需要激活 PDO ODBC 驱动程序。在 php.ini 文件中,去掉下面这一行前面的 ‘;’:

  extension=php_pdo_odbc.dll

  将 PHP 5 安装在 Apache HTTP 服务器中。在 /conf/httpd.conf 文件中,添加:

 

  # For PHP 5

  LoadModule php5_module
"C:/PHP/php5apache2.dll"

  AddType application
/x-httpd-php .php

  # configure the path
to php.ini

  PHPIniDir
"C:/PHP/"

 

  默认情况下, 目录是目录 C:/Program Files/Apache Group/Apache2。我们已经在 C:/Apache2/Apache2 目录中安装了 Apache2 服务器。如果 PHP 5 被安装到 C:/PHP 以外的目录中,那么用那个目录替换 C:/PHP。在修改 httpd.conf 目录之后,重新启动 Apache Web 服务器。将要在 Apache Web 服务器中运行的 PHP 文件复制到 C:/Apache2/Apache2/htdocs 目录中。

  下载 Xajax 0.2.4。在 C:/Apache2/Apache2/htdocs 目录中创建一个 xajax 目录。将 xajax_0.2.4.zip 文件解压到 xajax 目录中。

0
相关文章