php与XML、XSLT、Mysql的结合运用 代码篇

2016-01-29 15:04 3 1 收藏

php与XML、XSLT、Mysql的结合运用 代码篇,php与XML、XSLT、Mysql的结合运用,代码篇

【 tulaoshi.com - PHP 】

 

<?php   
    require_once "DB.php";            //PEAR中的数据库处理类
    $dataType = "mysql" ;            //数据库类型
    $user = "root";                    //用户名
    $pass = "abcd" ;                //密码
    $host="202.96.215.200";            //Mysql数据库服务器地址
    $db_name = "test";                //数据库名
    $dsn="$dataType://$user:$pass@$host/$db_name";   //连接数据库的DNS配制
    $db = DB::connect($dsn);        //连接数据库
    if (DB::isError($db))
    {           
        die ($db-getMessage());    //连接失败,输出出错信息
    }
   
    //下面二个是公共的函数
    /**
     * 读取xsl文档
     *
     * @param String $filename - xsl文件的名称
     * @return string
     */
    function readXsl($filename)
    {   
        if(false==file_exists($filename))
        {
            echo "要读取的文件<font color='red'$filename</font不存在</br /";   
            return false    ;
        }
        return implode('', file($filename));
    } //end function readXsl

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

/**
* 将xml文件或数组变量根据xsl文件转换成HTML内容
* http://knowsky.com
* @param array $arydata - 数组变量
* @param String $xslstring - xsl文档数据
* @param String $xmlstring - xml文档数据
*/
function getHtml($arydata = false, $xslstring = false, $xmlstring = false)
{
    global $db ;    //使用刚才的$db对象
    include_once("XML/sql2xml.php");    //把sql2xml包含进来
    $sql2xmlclass = new xml_sql2xml($db);    //将sql2xml实例化
    $sql2xmlclass-setEncoding("GB2312");    //设置数据的转码类型
    if (false == $xmlstring) { // 如果用户传入数组数据,则应用该数组数据到xsl       
        //设置生成XML文档数据的节点名称
        $options = array (  tagNameRow      = "row" ,
                            tagNameResult   = "result"
                );
        $sql2xmlclass-SetOptions($options);
        //添加要生成XML文档的数据
        $sql2xmlclass-add($arydata);       
    }
    //得到xml文档
    $xmlstring = $sql2xmlclass-getxml();
    //print $xmlstr

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

延伸阅读
标签: Web开发
XML的嵌套处理 一般情况下,我们从数据库中查询得到的结果集可能很大,所以从服务器返回到客户端时,数据会被分成若干个页面分别进行传递。此时,利用TABLE元素中的DATAPAGESIZE属性可以指定每个页面包含记录集条目的个数。 例如: TABLE DATASRC=“#xmldso” DATAPAGESIZE=10 很显然,如果XML数据格式是对称的,则无论是映射到ADO记录集...
标签: Web开发
XML和XSLT的转换使Web设计受益无穷。借助XML和 XSLT转换,你可以实现将动态用语(dynamic verbiage)和网站内容存储在数据库中。你可以在XML中传输数据库,然后再通过XSLT转换将其转变为HTML脚本。 在网络发展初期,凝聚性(cohesiveness)是由服务器端实现的,但要牵涉到大量的人工文件管理工作。幸运的是,随着网络的日益成熟,网络开发...
应黄海大师的提议,Access与Flash的结合应用. 这是一个access较为豪华的包装范例,他调用了flash的流媒体控件,利用flash的交互与通信功能,借以达到了我们装扮软件的目的。 flash具有动感强、色彩艳丽、体积小巧、支持动画和交互性好等等一些access并不具备的特点,尤其它的“流”技术更是无可比拟,它可以边加载边播放,即使是一些较大的影...
标签: PHP
  我承认我不是PHP的领导者。然而,在看了一些PHP的信息之后,我认为有一些功能需要添加到其中来处理数据库连接和整合XML。要做到这一点,我想我可以创建一个处理连接MySQL和使用PHP中的domxml功能来提供XML输出的类。然后我就可以在PHP脚本的任何地方声明这个类并且在需要使用它的时候可以提供XML功能。   我假设人们使用PHP是原...
标签: Web开发
在企业信息系统日常使用过程中经常需要处理一些平面文件,有些可能是通过网站平台传到统一的文档服务器进行管理,有些可能会有专门的文档管理应用系统。在这些系统的使用过程中经常需要添加一些文档的附属信息,比如上传上员,上传时间,文件的用途等。 虽然专业的文档系统可以使文档的管理变得非常简单高效,但是还是有一部分人需要...

经验教程

390

收藏

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