Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dirs

com XML + XSL + ASP

Recommended Posts

Primeiramente olá pra todo mundo. meu primeiro post aqui e vou ao meu problema:

 

Seguinte: Tenho uma base em Acess e conexão com ASP.

Os dados são mostrados por uma pagina XSL.

A questão é seguinte: tá tudo funcionando certinho porém na base não existia nenhum campo que precisava ser do tipo ("oCampo.Type") "Memorando", e tudo roadava corretamente.

Agora tive que incluir um novo campo com um texto comprido e usei o tal campo "Memorando" na minha Tabela Imoveis_T.

Como vocês podem ver, onde eu puxo os dados é de uma Imoveis_T_cs (consulta da Imoveis_T) e nela já está puxando meu campo novo também (só para responder alguma pergunta que podem fazer).

 

Quando eu coloco um campo do tipo Texto, ou Numero, funciona certinho, exibe no ASP/XSL.

Quando é memorando ele simplismente não aparece.

 

Acho que expliquei bem, vejam os codigos.

 

Meu arquivo ASP é o seguinte:

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%><%Option Explicit%><!--#include file="conexoes.asp" --><%Dim oXML,Raiz,rsImovel,rsImovelFoto,oEstiloXMLSet oXML = Server.CreateObject("Microsoft.XMLDOM")	oXML.appendChild(oXML.createProcessingInstruction("xml","version=""1.0"" encoding=""ISO-8859-1"""))Set Raiz=oXML.appendChild(oXML.createElement("imovel"))	Set rsImovel=Con.Execute("SELECT TOP 1 * FROM Imoveis_T_cs Where CodImovel="&Request.QueryString)LinhaPraNodo rsImovel,Raiz Set rsImovelFoto=Con.Execute("SELECT IdImovelFoto From ImoveisFotos Where CodImovel="&rsImovel("CodImovel"))While Not rsImovelFoto.EofLinhaPraNodo rsImovelFoto,Raiz.appendChild(oXML.createElement("foto"))rsImovelFoto.MoveNextWendSet oEstiloXML = Server.CreateObject("Microsoft.XMLDOM")oEstiloXML.load(Server.MapPath("imovel.xsl"))Raiz.transformNodeToObject oEstiloXML,Response

A parte do INCLUDE que deve interessar seria:

 

Function TrataPraXML(oCampo)If IsNull(oCampo.value) ThenSelect Case oCampo.TypeCase 16,2,3,20,17,18,19,21,4,5,6,14,131 TrataPraXML=0Case 11 TrataPraXML=0Case Else TrataPraXML=""End SelectElseSelect Case oCampo.TypeCase 4,5,6,14,131 TrataPraXML=Replace(CStr(oCampo.Value),",",".")Case 204,205,128 TrataPraXML=oCampo.ValueCase 201,203,202 TrataPraXML=Server.HTMLEncode(oCampo.Value)Case 11 TrataPraXML=CInt(oCampo.Value)*(-1)Case Else TrataPraXML=oCampo.ValueEnd SelectEnd IfEnd Function

E a parte que interessa do meu arquivo XSL:

 

<xsl:value-of select="@Caracteristicas"/>

o ASP chama imovel.asp e o XSL imovel.xsl.

Se alguem tiver conhecimento pra responder, favor ;D

Abraçõs.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dae galera, passei a tarde toda tentando resolver, e logo depois que postei consegui resolver.

 

O Codigo XSL que antes era

 

<xsl:value-of select="@Caracteristicas"/>
Passou a ser:

 

<xsl:value-of select="Caracteristicas" disable-output-escaping="yes"/>
Ou seja, tirou o @ e adicionou o "disable-output-escaping="yes" para resolver problemas de acento.

 

É uma pena uma tecnologia como essa ainda não ter começado a ser usada aqui no Brasil em massa. Procurei um monte não achei nada que me ajuda-se a resolver o problema, espero que os proximos a tentarem possam ver esse topico e que lhes ajude.

Compartilhar este post


Link para o post
Compartilhar em outros sites

gostei de um post no seu blog sobre web 2.0realmente estava vendo as documentações sobre JavaScript e datam de 1997 e tenho um livro de XML de 1999, se bem que nessa epoca eu não sabia uma tag nem de html. mais são recursos antigos e que foram muito usados já e só agora ficam falando em "boom"

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.