• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    php與XML、XSLT、Mysql的結合運用,代碼篇

    發布: 2007-7-14 19:53 | 作者: 佚名    | 來源: 網絡轉載     | 查看: 8次 | 進入軟件測試論壇討論

    領測軟件測試網


        <?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"
                    );
            $sql2xmlclass->SetOptions($options);
            //添加要生成XML文檔的數據
            $sql2xmlclass->add($arydata);        
        }
        //得到xml文檔
        $xmlstring = $sql2xmlclass->getxml();
        //print $xmlstring;
        //下面開始將XML數據文檔用XSLT轉換成HTML文檔
        $arguments = array('/_xml' => $xmlstring,
            '/_xsl' => $xslstring
            );
        $xh = xslt_create();

        $result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', null, $arguments);

        if ($result) {
            return $result;
            xslt_free($xh);
        } else {
            return "轉換xml數據到xsl時出錯";
            xslt_free($xh);
        }
    } //end function getHtml()




        //從用戶信息表中查詢數據的SQL語句
        $sql = "select
                        nsrnm, #代碼
                        qymc,  #企業名稱
                        qydh   #電話
                from
                        yhxx   #用戶信息表";
        // 執行SQL語句
        $res = $db->query($sql);
        if ($db->isError($res))
        {
            echo "執行SQL語句時出錯";
        }
        while ($row = $res->fetchRow(DB_FETCHMODE_ASSOC))
        {    
            $data[] = $row;    //將數據放到一個數組中
        }
        //print_r($data);
        //大家可以看到數據已經放到了一個多維的數組中了
        //至此,我們的程序已經基本上完成了,再接下去,我們要定義顯示數據的頁面
        //打開你的DW 或 FrontPage XP,制作顯示的頁面,我做了一個,并提供給大家下載
        
        //我們制作的數據顯示頁面文件為:browesData.html
        /*
        這是我們平時要顯示的數據列表界面
        <html>
        <head>
        <meta http-equiv="Content-Language" content="zh-cn">
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
        <title>數據瀏覽</title>
        </head>
        
        <body>
        <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
            <tr>
                  <td width="21%" align="center" bgcolor="#C0C0C0">代碼</td>
                  <td width="50%" align="center" bgcolor="#C0C0C0">企業名稱</td>
                  <td width="29%" align="center" bgcolor="#C0C0C0">電話</td>
            </tr>
            <tr>
                  <td width="21%"> </td>
                  <td width="50%"> </td>
                  <td width="29%"> </td>
            </tr>
        </table>
        </body>
        </html>

        
        */
        
        //我把它加工成一個XSLT格式的HTML文檔
        /*
        <?xml version="1.0" encoding="gb2312"?>
        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
        <xsl:output method="html" version="1.0" encoding="GB2312" indent="yes" />
        <xsl:template match="/">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
        <title>數據瀏覽</title>
        </head>
        <body>
        <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
            <tbody>
            <tr>
                  <td width="21%" align="center" bgcolor="#C0C0C0">代碼</td>
                  <td width="50%" align="center" bgcolor="#C0C0C0">企業名稱</td>
                  <td width="29%" align="center" bgcolor="#C0C0C0">電話</td>
            </tr>
        
         <xsl:for-each select="root/result/row">
            
            <tr>
                  <td width="21%"> <xsl:value-of select="nsrnm" /></td>
                  <td width="50%"> <xsl:value-of select="qymc" /></td>
                  <td width="29%"> <xsl:value-of select="qydh" /></td>
            </tr>
        
        
        </xsl:for-each>
        
        
        </tbody>
        
        
        </table>
        </body>
        </html>
            </xsl:template>
        </xsl:stylesheet>
        
        
        */
        $htmlFile="browesData.html"    ;    
        $htmlStr = readXsl($htmlFile);    //將xslt格式的HTML文檔讀取到變量中
        echo getHtml($data, $htmlStr)    ;
        
        //程序結束
        
        ?> 

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>