首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

高分请问!数据库查询的结果返回XML,怎样动态转化成HTML?(顶者有分)

2012-03-06 
高分请教!!数据库查询的结果返回XML,怎样动态转化成HTML??(顶者有分)数据库的查询结果,返回XML怎么将结果

高分请教!!数据库查询的结果返回XML,怎样动态转化成HTML??(顶者有分)
数据库的查询结果,返回XML
怎么将结果动态转换成HTML.
如果使用XSLT的话是不是要手写?
如果手写每次查询的条件不同,结果也就不同,手写XSLT就不能适应变化了?

[解决办法]
XSLT。JAVASCRIPT客户端动态修改查询条件可解决。

http://blogger.org.cn/blog/more.asp?name=Qr&id=10629
[解决办法]
楼主的问题 我也一直在想 看过很多资料 都是在写把xml过一下实现写好的xslt就变成html了 但所有的东西不可能死死的放在那里 怎么让xslt也动起来呢 希望得到大侠们的指导
[解决办法]
XSLT是显示和数据分离
如果有多个显示方式可以先判断再转向适当的xslt
xslt可以在服务器生成html数据再发送给客户端
[解决办法]
如果是要做互动的话,XSLT可以用参数。
可以参考一下这篇:http://blog.csdn.net/cds27/archive/2006/05/08/712546.aspx
[解决办法]
xslt只是格式化转换,查询结果具体要格式化成什么,是需要写xslt与之对应的


[解决办法]
XSLT代码和参数是你定的, 只要写的合理当然是可以.
[解决办法]
asp文件:
<html>
<head>
<title> Happy Sky BookShop </title>
</head>


<%@LANGUAGE= "VBSCRIPT " CODEPAGE= "936 "%>
<%
Dim cn_ebookstore
set cn_ebookstore = CreateObject( "ADODB.Connection ")
cn_ebookstore.Open "driver={SQL Server}; server=HOTDAY; database=ebookstore; UID=sa; PWD=123456; "
if Request( "query_type ")= "title " then
Session( "query ")= "SELECT * FROM Book WHERE Title LIKE '% " & Request.Form( "txtQuery ") & "% ' "

elseif Request( "query_type ")= "author " then
Session( "query ")= "SELECT * FROM Book,AuthorList,BookAuthorList WHERE AuthorList.Name LIKE '% " & Request.Form( "txtQuery ") & "% ' AND Book.BookNo=BookAuthorList.BookNo AND BookAuthorList.AuthorNo=AuthorList.AuthorNo "
end if

Dim rsbooklist
Set rsbooklist=cn_ebookstore.Execute(Session( "query "))

if (rsbooklist.BOF=True AND rsbooklist.EOF=True) then
Response.Write( "Wrong! Do not have the book! ")
else
%>
<% Response.ContentType= "text/xml " %>
<?xml version= "1.0 " encoding= "GB2312 " ?>
<?xml-stylesheet type= "text/xsl " href= "style.xsl " ?>
<booklist>
<% Do Until rsbooklist.EOF %>
<book>
<书名> <%=rsbooklist( "Title ")%> </书名>
<书号> <%=rsbooklist( "BookNo ")%> </书号>
<定价> <%=rsbooklist( "Price ")%> </定价>
<图片> <%=rsbooklist( "BookNo ")%> .jpg </图片>
<详细信息> Details.asp? BookNo= <%=rsbooklist( "BookNo ")%> </详细信息>
<% bookno=rsbooklist( "BookNo ")
Dim rsAuthorlist
Set rsAuthorlist =cn_ebookstore.Execute( "SELECT AuthorList.Name FROM AuthorList,BookAuthorList WHERE (BookAuthorList.BookNo= ' "& bookno & " ' AND BookAuthorList.AuthorNO=AuthorList.AuthorNO) ")
Do Until rsAuthorList.EOF %>
<作者> <%=rsAuthorList( "Name ")%> </作者>
<% rsAuthorList.MoveNext
Loop
rsAuthorList.Close %>
</book>
<% rsbooklist.MoveNext


Loop %>
</booklist>
<%
end if
rsbooklist.Close
cn_ebookstore.Close
%>
<body bgcolor= "#3399FF ">
</body>
</html>
XSL文件:
<?xml version= "1.0 " encoding= "GB2312 "?>

<xsl:stylesheet version= "1.0 " xmlns:xsl= "http://www.w3.org/TR/WD-XSL " >

<xsl:template match= "/ ">
<html>
<table width= "100% " border= "1 ">
<tr>
<th width= "150 "> 书名 </th> <th width= "40 "> 书号 </th>
<th width= "40 "> 定价 </th> <th width= "120 "> 作者 </th>
<th width= "120 "> 图片 </th> <th> 详细信息 </th>
</tr>
<xsl:apply-templates select= "//book " order-by= "+书号 "/>
</table>
</html>
</xsl:template>

<xsl:template match= "book ">
<tr>
<td width= "150 "> <xsl:value-of select= "书名 "/> </td>
<td width= "40 "> <xsl:value-of select= "书号 "/> </td>
<td width= "40 "> <xsl:value-of select= "定价 "/> </td>
<td width= "120 "> <xsl:value-of select= "作者 "/> </td>
<td width= "120 "> <xsl:value-of select= "图片 "/> </td>
<td > <xsl:value-of select= "详细信息 "/> </td>
</tr>
</xsl:template>
</xsl:stylesheet>

例程 谨供参考......

[解决办法]
以上的代码只是一部分,我也存在一点问题,希望一起探讨吗?
加我QQ36815062
验证信息就填写:CSDN就可以

热点排行