php與XML XSLT Mysql的結合運用

2021-03-31 08:56:30 字數 3630 閱讀 5158

php與xml、xslt、mysql的結合運用

瀏覽次數: 248

一 php與xml、xslt、mysql的結合運用,安裝篇

經常看到有使用者問一些關於php與xml、資料庫結合運用的貼子,也經常看到一些初學者

把php**與html**混寫到一起,然後在出錯的時候找不到錯誤,急得團團轉,下面我就給大

家講一下如何用xml技術將html**和php程式分離,當然,分離的技術有好多種,比如pear中

的it模板.

總的來說,個人認為使用xml技術是最方便的,廢話不多說了,我們言歸正傳,

講一下在win2000下的安裝

使用php中的xml與xslt要用到一些dll庫,

extension=php_domxml.dll //操作xml的函式庫

extension=php_iconv.dll //轉碼用的,比如將??????的轉成utf-8的

extension=php_xslt.dll //xslt的函式庫

使用上面這三個庫的時候,你要將php安裝目錄下的dlls目錄加入到路徑中,否則會找不到

這些類庫的

在下面的課程中,我們會用到php中的pear類庫,主要用了db類庫,sql2xml類庫,大家可以在

include_path = ".;d:/php/pear"

d:/php/pear 是我的pear的安裝路徑

設定完以後,重新啟動一下機器,否則因為路徑找不到而導致apache啟動不正常,無法正常使用

至此要使用php中的xml和xslt的設定就完成了,是不是很簡單

使用linux的使用者可以到

http://.gnu./software/libicon...關於iconv的原始碼

二 php與xml、xslt、mysql的結合運用,初級篇

下面我要講的是乙個簡單的從資料庫中抽取資料,生成xml文件,使用xslt轉換成html的過程,

該過程只講使用這一技術的過程,不會涉及分頁等其它的技術

該示例我使用下面的資料庫表及資料

表名:企業使用者資訊表,英文名:yhxx

表結構:

# # 資料表的結構 `yhxx`

# create table yhxx (

nsrnm varchar(15) not null default '',

qymc varchar(200) not null default '',

qydh varchar(50) not null default '',

primary key (nsrnm)

) type=myisam ***ment='使用者資訊表';

# # 資料表內容 `yhxx`

# insert into yhxx values ('310109040111985', '喬家飲食發展****', '8621-63346626');

insert into yhxx values ('310104040221736', '上海嘉陵******', '74292546');

insert into yhxx values ('310108040331576', '翡翠藝術公司', '54861465');

接下來我開始寫抽取資料的程式與顯示資料的頁面

為了使大家都能明白,我使用最簡單的方法來寫程式

程式檔名稱:browesdata.php

頁面檔名稱:browesdata.html

如果大家對此技術感興趣,我再為大家講一下php與xml、xslt、資料庫結合更深一步的應用

?>

getmessage());    //連線失敗,輸出出錯資訊

} //下面二個是公共的函式

/**

* 讀取xsl文件

* * @param string $filename - xsl檔案的名稱

* @return string

*/ function readxsl($filename)

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)

//得到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) else

} //end function gethtml()

//從使用者資訊表中查詢資料的sql語句

$sql = "select

nsrnm, #**

qymc,  #企業名稱

qydh   #**

from

yhxx   #使用者資訊表";

// 執行sql語句

$res = $db->query($sql);

if ($db->iserror($res))

while ($row = $res->fetchrow(db_fetchmode_assoc))

//print_r($data);

//大家可以看到資料已經放到了乙個多維的陣列中了

//至此,我們的程式已經基本上完成了,再接下去,我們要定義顯示資料的頁面

//我們製作的資料顯示頁面檔案為:browesdata.html

/* 這是我們平時要顯示的資料列表介面    

**企業名稱

***/

//我把它加工成乙個xslt格式的html文件

/* <?xml version="1.0" encoding="??????"?>

**企業名稱**

*/ $htmlfile="browesdata.html"    ;    

$htmlstr = readxsl($htmlfile);    //將xslt格式的html文件讀取到變數中

echo gethtml($data, $htmlstr)    ;

//程式結束

?> 

mysql與php的連線 PHP與Mysql的連線

寫程式切記馬虎,不細仔,真是寫程式的大忌中的大忌。所以以後寫 務必 細心仔細不驕不燥,才能寫出來好 來,避免迷惘。echo this is a test echo asdfasdfadsf mysql server name localhost 資料庫伺服器名稱 mysql username roo...

PHP基本格式與PHP變數 常量

php是一種建立動態互動性站點的強有力的伺服器端指令碼語言。php 1.變數規則 變數以 符號開始,後面跟著變數的名稱 變數名必須以字母或者下劃線字元開始 變數名只能包含字母數字字元以及下劃線 a z 0 9和 變數名不能包含空格 變數名是區分大小寫的 y和 y 是兩個不同的變數 2.php變數作用...

PHP 一一 PHP與MySQL相關操作

所有由上圖可知,php 想與mysql 進行互動必須有 5個步驟。要用到的知識點 mysql conncect 主機名稱如localhost mysql使用者名稱如root mysql密碼如root 要用到的知識點 mysql select db 資料庫的名稱 要用到的知識點 mysql query...