Ir para conteúdo

POWERED BY:

Arquivado

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

Paulo Negrão

Recuperar nó do xml

Recommended Posts

estou com um xml retorno da cielo e gostaria que alguem me ajudasse a recuperar( tratar ) esse retorno pois preciso criar uma session com o tid e outras mensagens, segue o arquivo xml:

 

<?xml version="1.0" encoding="ISO-8859-1" ?>

- <transacao id="5" versao="1.1.0" xmlns="http://ecommerce.cbmp.com.br">

<tid>1001734898051CAC2006</tid>

<pan>IqVz7P9zaIgTYdU41HaW/OB/d7Idwttqwb2vaTt8MT0=</pan>

- <dados-pedido>

<numero>304060</numero>

<valor>60000</valor>

<moeda>986</moeda>

<data-hora>2011-04-29T17:25:38.280-02:00</data-hora>

<idioma>PT</idioma>

</dados-pedido>

- <forma-pagamento>

<bandeira>visa</bandeira>

<produto>2</produto>

<parcelas>6</parcelas>

</forma-pagamento>

<status>6</status>

- <autenticacao>

<codigo>6</codigo>

<mensagem>Transacao sem autenticacao</mensagem>

<data-hora>2011-04-29T17:48:11.757-02:00</data-hora>

<valor>60000</valor>

<eci>7</eci>

</autenticacao>

- <autorizacao>

<codigo>6</codigo>

<mensagem>Transa? autorizada</mensagem>

<data-hora>2011-04-29T17:48:11.765-02:00</data-hora>

<valor>60000</valor>

<lr>00</lr>

<arp>164811</arp>

</autorizacao>

- <captura>

<codigo>6</codigo>

<mensagem>Transacao capturada com sucesso</mensagem>

<data-hora>2011-04-29T17:48:12.891-02:00</data-hora>

<valor>60000</valor>

</captura>

</transacao>

 

obrigado a todos .

Compartilhar este post


Link para o post
Compartilhar em outros sites

existe um ótimo artigo do Ted´k onde você consegue recuperar valores do xml, á uma olhada na seção de artigos e no lab. de script.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilizo o Gateway da Locaweb e eles disponibilizam essa função muito boa em seu exemplo:

 

 

	' ################################################################################################
' pegaValorNode
' Retorno o valor específico de um Node de um XML
Function pegaValorNode(xml, node)
	Dim objXml
	Set objXml = Server.CreateObject("MSXML2.DOMDocument")

	objXml.loadXML(xml)

	If (TypeName(objXml) = "DOMDocument") Then
		If (objXml.GetElementsByTagName(node).length <> 0) Then
			pegaValorNode = objXml.selectSingleNode("//" & node).text
		Else
			pegaValorNode = ""
		End If
	Else
		pegaValorNode = ""
	End If

	Set objXml = Nothing
End Function

 

Utilizando a função:

'objSrvHTTP.responseText: retorno utilizando MSXML2.XMLHTTP.3.0
   xml = objSrvHTTP.responseText
'erro//codigo: nó a ser recuperado
   retorno_codigo_erro = pegaValorNode(xml,"erro//codigo")

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.