当前位置: 首页 > 图文教程 > 网络编程 > PHP > 二 php与XML、XSLT、Mysql的结合运用,代码篇

PHP
NT IIS下用ODBC连接数据库
基于mysql的bbs设计(三)
基于mysql的bbs设计(二)
基于mysql的bbs设计(一)
PHP+DBM的同学录程序(2)
PHP+DBM的同学录程序(3)
基于mysql的bbs设计(四)
PHP+DBM的同学录程序(1)
PHP+DBM的同学录程序(4)
同时提取多条新闻中的文本一例
PHP+DBM的同学录程序(5)
基于mysql的bbs设计(五)
杏林同学录(二)
杏林同学录(一)
php访问查询mysql数据的三种方法
实时抓取YAHOO股票报价的代码
模拟SQLSERVER的两个函数:dateadd(),datediff()
如何实现给定日期的若干天以后的日期
一个SQL管理员的web接口
利用PHP动态生成VRML网页

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 243 ::
收藏到网摘: n/a

<?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

/**
* 将xml文件或数组变量根据xsl文件转换成HTML内容
*
* @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"