De primeira, vamos organizar o arquivo Visualizar.xsl:
Visualizar.xsl
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<center>
<font color="#000000" size="2" face="MS Sans Serif">Visualizando Dados</font>
<table width="465" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="117" height="22"><div align="center"><strong>Nome</strong></div></td>
<td width="125"><div align="center"><strong>E-mail</strong></div></td>
<td width="107"><div align="center"><strong>Telefone</strong></div></td>
<td width="106"><div align="center"><strong>Ações</strong></div></td>
</tr>
<xsl:for-each select="cadastro/usuario">
<tr align="center">
<td height="22"><xsl:value-of select="nome"/></td>
<td><xsl:value-of select="email"/></td>
<td><xsl:value-of select="telefone"/></td>
<td><a><xsl:attribute name="href">Editar.asp?nome=<xsl:value-of select="nome"/><xsl:value-of select="link"/></xsl:attribute>Editar</a>/<a><xsl:attribute name="href">Listar.asp?nome=<xsl:value-of select="nome"/><xsl:value-of select="link"/></xsl:attribute>Apagar</a></td>
</tr>
</xsl:for-each>
</table>
</center>
</xsl:template>
</xsl:stylesheet>
Com o stylesheet (que não vem ao caso explicar no momento) vamos fazendo a estrutura de visualização de todos os elementos da tag usuario através de um for-each assim:
<xsl:for-each select=”cadastro/usuario”> e fechando com </xsl:for-each>
Pegamos o valor dos elementos com essa estrutura aqui: <xsl:value-of select=”nome_da_tag”/>.
Usamos o atributo <xsl:attribute name=”href”> para gerar links, no nosso caso para excluir e editar (que não será mostrado nesse artigo).
Em uma página chamada Listar.asp criamos os objetos para chamar o XML e o XSL e integrá-los com o transformNode:
Set XSLDOC = Server.CreateObject("Microsoft.XMLDOM")
Set XMLDOC = Server.CreateObject("Microsoft.XMLDOM")
XMLDOC.Load(Server.MapPath("Banco.xml"))
XSLDOC.Load(Server.MapPath("Visualizar.xsl"))
Response.Write(XMLDOC.transformNode(XSLDOC))
Para deletar é simples, criamos um XMLDOC.documentElement para escolher qual nó vamos deletar e chamamos por querystring como tem no <xsl:attribute name=”href”> do Visualizar.xsl, que no caso usamos o select=”nome”, deletando com o removeChild, segue abaixo o código completo de Listar.asp
Listar.asp
<%@ Language="VBScript" %>
<html>
<body>
<a href="Cadastro.asp">CADASTRAR</a> - <a href="Listar.asp">LISTAR</a>
<br><br>
<%
Set XSLDOC = Server.CreateObject("Microsoft.XMLDOM") ' Criando Objeto
Set XMLDOC = Server.CreateObject("Microsoft.XMLDOM") ' Criando Objeto
Listando Dados
XMLDOC.Load(Server.MapPath("Banco.xml"))
XSLDOC.Load(Server.MapPath("Visualizar.xsl"))
Response.Write(XMLDOC.transformNode(XSLDOC))
Deletando Dados
If CStr(Request.QueryString("Nome")) <> "" Then
Banco = Server.MapPath("Banco.xml") ' Chamando o Arquivo XML para sofrer alteração
XMLDOC.Load(Banco)
Set RaizXML = XMLDOC.documentElement
Set AlterarReg = RaizXML.selectSingleNode("usuario[nome='"&Request.QueryString("nome")&"']")
RaizXML.removeChild(AlterarReg) ' Linha de remoção de Objetos
XMLDOC.Save(Banco)
Response.Write("<script>alert('Deletado com Sucesso!');location='Listar.asp'</script>")
End If
Set XSLDOC = Nothing
Set XMLDOC = Nothing
%>
</body>
</html>
E pronto, mais um artigo finalizado! Até o próximo!