require_once "DB.php"; //Database processing class in PEAR
$dataType = "mysql"; //Database type
$user = "root "; //Username
$pass = "abcd" ; //Password
$host="202.96.215.200"; //Mysql database server address
$db_name = "test"; //Database Name
$dsn="$dataType://$user:$pass@$host/$db_name"; //DNS configuration to connect to the database
$db = DB::connect($dsn); // Connect to the database
if (DB::isError($db))
{
die ($db->getMessage()); //Connection failed, output error message
}
//The following two are public functions
/**
* Read xsl document
*
* @param String $filename - the name of the xsl file
* @return string
*/
function readXsl($filename)
{
if(false==file_exists($filename))
{
echo "The file to be read
$filename does not exist";
return false;
}
return implode('', file($filename));
} //end function readXsl
/**
* Convert xml files or array variables into HTML content based on xsl files
* http://knowsky.com
* @param array $arydata - array variable
* @param String $xslstring - xsl document data
* @param String $xmlstring - xml document data
*/
function getHtml($arydata = false, $xslstring = false, $xmlstring = false)
{
global $db; //Use the $db object just now
include_once("XML/sql2xml.php"); //Include sql2xml
$sql2xmlclass = new xml_sql2xml($db); //Instantiate sql2xml
$sql2xmlclass->setEncoding("GB2312"); //Set the data transcoding type
if (false == $xmlstring) { // If the user passes in array data, apply the array data to xsl
//Set the node name to generate XML document data
$options = array ( tagNameRow => "row" ,
tagNameResult => "result"
);
$sql2xmlclass->SetOptions($options);
//Add data to generate XML document
$sql2xmlclass->add($arydata);
}
//Get the xml document
$xmlstring = $sql2xmlclass->getxml();
//print $xmlstring;
//Let’s start converting the XML data document into HTML using XSLT Document
$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 "Error converting xml data to xsl";
xslt_free($xh);
}
} //end function getHtml()
//SQL statement to query data from the user information table
$sql = "select
nsrnm, #code
qymc, #business name
qydh #phone
from
yhxx #User information table";
//Execute SQL statement
$res = $db->query($sql);
if ($db->isError($res) )
{
echo "Error while executing SQL statement";
}
while ($row = $res->fetchRow(DB_FETCHMODE_ASSOC))
{
$data[] = $row; //Put the data into an array
}
//print_r($data);
//You can see that the data has been placed into a multi-dimensional array
//At this point, our program has basically been completed. Next, we need to define the page that displays the data
//Open your DW or FrontPage XP and create a display page. I made one and provided it to Download
//The data display page file we created is: browesData.html
/*
This is the data list interface we usually display
Data Browse
Code |
Company name | Phone |
|
|
< ;/td>
|
*/
//我把它加工成一个XSLT格式的HTML文档
/*
数据浏览
*/
$htmlFile="browesData.html" ;
$htmlStr = readXsl($htmlFile); //将xslt格式的HTML文档读取到变量中
echo getHtml($data, $htmlStr) ;
//程序结束
?>