XML i / med ASP

ASP

5 svar · 196 visningar · startad av Rossifumi

Medlem sedan okt. 20001 558 inlägg
Trådstart#1

Kan man använda XML i ASP?

Alltså kan man göra "mallar" i XML som man sen på ett smart sätt använder med ASP?

Hur isåfall?

Medlem sedan dec. 19996 721 inlägg
#2

JA, med eftertryck! Det går JÄTTEbra! ;)

Exempel:

<%
set objXML = Server.CreateObject("Microsoft.XMLDOM")
set objXSL = Server.CreateObject("Microsoft.XMLDOM")

objXML.async = false
objXSL.async = false

objXML.load("mittxmldokument.xml")
objXSL.load("mittstylesheet.xsl")

Response.Write(objXML.transformNode(objXSL))
%>
Medlem sedan okt. 20001 558 inlägg
#3

Med risk för att verka korkad...

Hur ser dina XML / XLS filer ut (ett exempel bara)?

Vad är fördelar med detta (gentemot vanliga include filer)?

Behövs ngt på serven, eller kan jag köra detta på mitt webhotell?

Medlem sedan juli 2000836 inlägg
#4

Exempel:

Asp-filen (cd.asp):

<%
'Ladda XML'en
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("cd_catalog.xml"))

'Ladda XSL'en
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("cd_catalog.xsl"))

'Transformera filen
Response.Write(xml.transformNode(xsl))
%>

XML:en (cd_catalog.xml)

<?xml version="1.0"?>
<CATALOG>
  <CD>
    <TITLE><![CDATA[Empire Burlesque]]></TITLE>
    <ARTIST><![CDATA[Bob Dylan]]></ARTIST>
    <COUNTRY><![CDATA[USA]]></COUNTRY>
    <COMPANY><![CDATA[Columbia]]></COMPANY>
    <PRICE><![CDATA[10.90]]></PRICE>
    <YEAR><![CDATA[1985]]></YEAR>
  </CD>
  <CD>
    <TITLE><![CDATA[Hide your heart]]></TITLE>
    <ARTIST><![CDATA[Bonnie Tyler]]></ARTIST>
    <COUNTRY><![CDATA[UK]]></COUNTRY>
    <COMPANY><![CDATA[CBS Records]]></COMPANY>
    <PRICE><![CDATA[9.90]]></PRICE>
    <YEAR><![CDATA[1988]]></YEAR>
  </CD>
  <CD>
    <TITLE><![CDATA[Greatest Hits]]></TITLE>
    <ARTIST><![CDATA[Dolly Parton]]></ARTIST>
    <COUNTRY><![CDATA[USA]]></COUNTRY>
    <COMPANY><![CDATA[RCA]]></COMPANY>
    <PRICE><![CDATA[9.90]]></PRICE>
    <YEAR><![CDATA[1982]]></YEAR>
  </CD>
  <CD>
    <TITLE><![CDATA[Still got the blues]]></TITLE>
    <ARTIST><![CDATA[Gary More]]></ARTIST>
    <COUNTRY><![CDATA[UK]]></COUNTRY>
    <COMPANY><![CDATA[Virgin redords]]></COMPANY>
    <PRICE><![CDATA[10.20]]></PRICE>
    <YEAR><![CDATA[1990]]></YEAR>
  </CD>
</CATALOG>

XSL:en (cd_catalog.xsl)

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
  <html>
  <body>
    <table border="1" bgcolor="#cccccc">
      <tr>
        <th>Title</th>
        <th>Artist</th>
      </tr>
<xsl:for-each select="CATALOG/CD" order-by="+ ARTIST"> 
  <xsl:choose>
   <xsl:when match=".[ARTIST='Bob Dylan']">
    <tr bgcolor="#00cccc">
     <td><xsl:value-of select="TITLE"/></td>      
     <td><xsl:value-of select="ARTIST"/></td>
    </tr>
   </xsl:when>
  <xsl:otherwise>
   <tr>
    <td><xsl:value-of select="TITLE"/></td>      
    <td><xsl:value-of select="ARTIST"/></td>
   </tr>
  </xsl:otherwise>
 </xsl:choose>
</xsl:for-each>
    </table>

  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

/ J

Medlem sedan dec. 19996 721 inlägg
#5

Hur ser dina XML / XLS filer ut (ett exempel bara)?

Exempel ovan...

Vad är fördelar med detta (gentemot vanliga include filer)?

Man kan inte jämföra det med include, så jag vet inte vad jag ska svara på det. I det visade fallet är en av fördelarna att man kan välja stylesheet (XSL), beroende på vilken typ av klient som ska ta emot informationen. Det vara för att skilja mellan Netscape och IE, mellan HTML och WML, eller något helt annat.
http://cgi.webforum.nu/wf/Forum10/HTML/000021.html

Behövs ngt på serven, eller kan jag köra detta på mitt webhotell?

Ja, de behöver Microsofts XMLDOM-komponenter, men det är inte alls osannolikt att de har det. Prova med createobject-biten, så märker du.

Medlem sedan okt. 20001 558 inlägg
#6

Tack för alla svaren... Verkar som det är ngt man borde kunna ;)

253 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)