网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > PHP > 正文
用于MySQL的PHP XML类
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/12/08
下载{$ArticleTitle}原创论文样式

  我假设人们使用PHP是原因是他的标价:免费。MySQL为需要向系统中增加数据库功能的开发人员提供一个免费的数据库解决方案。这些解决方案的缺点是在设置和管理的时候有些复杂。

  我在这篇文章中使用的PHP版本是PHP 4.3.4 for Win32,可以从The PHP Group下载。MySQL的版本是MySQL 4.0.16 for Win32,可以从MySQL.com得到。MySQL的安装很容易——只要简单地按照其指令来就可以了。PHP稍微有一点复杂。

  在PHP的下载页面有两个文件:一个ZIP文件和一个安装文件。因为我们需要添加ZIP文件中的扩展,所以这两个文件都要下载。下面是下载之后的所要做的一个简单步骤:

  1. 使用安装文件安装PHP;

  2. 解压iconv.dll,将其放到Windows的系统文件夹中;

  3. PHP安装目录下创建一个目录(默认为C:PHP)“extensions”;

  4. 解压PHP_domXML.dll文件到这个目录;

  5. 在Windows文件夹下找到PHP.ini文件,然后使用记事本或其它文本编辑器打开。在这个文件中找到“extensions_dir=”,然后将其值修改为第3步设置的扩展文件夹的完整路径;

  6. 找到“;extension=PHP_domxml.dll”,删除本行开头的分号;

  7. 重新启动Web服务器。

  然后在你的Web目录下使用下面的代码创建一个PHP页面“test.PHP”。(这段代码在运行IIS 5.0的Windows 2000 SP3能够正常运行。)

run_sql_return_xml("SELECT * FROM users");
classCMySQLXML {
  var $host;
  var $user;
  var $password;
  var $db;
  functionCMySQLXML($host, $user, $password, $db) {
    $this->host = $host;
    $this->user = $user;
    $this->password = $password;
    $this->db = $db;
  }
   functionrun_sql_return_xml($sql_string) {
    $connection = MySQL_connect($this->host, $this->user, $this->password,
$this->db);
    MySQL_select_db($this->db);
    $result = MySQL_query($sql_string);
    $doc = domxml_open_mem("");
    while ($row = mysql_fetch_array($result, MySQL_ASSOC)) {
      $num_fields = MySQL_num_fields($result);
      $row_element = $doc->create_element(MySQL_field_table($result, 0));
      $doc_root = $doc->document_element();
      $row_element = $doc_root->append_child($row_element);
      for ($i = 0; $i < $num_fields; $i++) {
        $field_name = MySQL_field_name($result, $i);
        $col_element = $doc->create_element($field_name);
        $col_element = $row_element->append_child($col_element);
        $text_node = $doc->create_text_node($row[$field_name]);
        $col_element->append_child($text_node);
      }
    }
    MySQL_free_result($result);
    MySQL_close($connection);
    return $doc->dump_mem(false);
  }
 }

  这个例子要求你在MySQL上有一个数据库“test”,其中有一个表“users”。而且,你还需要为访问测试数据库上的数据创建一个用户。创建数据库、表等的步骤可以查看MySQL的文档。

  如果你分析一下代码,你就会明白我创建了一个叫做CMySqlXML的类。CMySqlXML构造函数接受四个参数:MySQL的主机名,一个合法的用户名,一个密码和一个数据库名字。构造函数使用这四个参数设置类的host、user、password和db成员变量。

  该类提供的唯一的一个方法是run_sql_return_xml()。它接受一个SQL查询字符串参数。当这个方法执行的时候,它创建一个到MySQL数据库的连接并选择数据库。查询字符串被执行,结果存储到变量$result中。使用domxml_open_mem()函数创建一个新的DOMDocument对象。然后,代码开始循环结果集中的所有记录。对于每一条记录,添加一个与结果集的表同名的行元素到DOMDocument文档元素中。然后为每个字段添加一个元素到行元素中,元素名为字段名。最后,一个文本节点被添加到每个字段节点,节点的值为该字段的值。

  在循环所有行之后,代码释放结果集并关闭连接。产生的DOMDocument XML从函数中返回。

  在PHP页面的开始处你会看到CMySQLXML对象被实例化,run_sql_return_xml()方法被调用。这个方法的返回值被返回给客户。domxml功能除了PHP函数命名约定之外都遵守DOM规范。

  如果需要更多有关DOM规范的信息,可以访问W3C的站点。而更多domxml的信息则可以从The PHP Group找到,在这里你可以下载不同格式的文档。

(责任编辑:admin)

  • 上一篇资讯: PHP的GD库函数大全
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号