Ciao a tutti, sto sbattendo la testa ->
su un xml che cerco di leggere con Microsoft.XMLDOM.
Il mio XML é così composto
<items>
<item id="1">valore1</item>
<item id="2">valore2</item>
<item id="3">valore3</item>
<item id="4">valore4</item>
</items>
avrei bisogno di estrapolare valore1 ... valore4
ho provato con questo script che ho trovato in giro
Codice PHP:
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.setProperty "ServerHTTPRequest", true
objXML.async = False
'Carica il file XML o il feed rss in formato xml
strFile= percorso_wwwroot & file_annunci
objXML.Load (strFile)
Set AllItems = objXML.selectNodes("//dataset")
For I = 0 to (AllItems.Length - 1)
Set Post = AllItems(I).selectNodes("items")
For J = 0 to (Post.Length-1)
set item = Post(J).selectNodes("item[id='0']")
Response.Write(item)
Response.Write(item(0).text)
Next
Set Post = Nothing
Next
ma mi da errore provando singolarmente ognuno dei 2 response.write. Come faccio ad estrapolarmi il valore 'valore1' che in teoria é dentro la variabile 'item'?
__________________________________________________ ________________________
questo invece é lo script che avevo fatto da cui riesco ad estrapolarmi i valori ma ha comunque un suo problema, se trova un nodo </item> (quindi non valorizzato) mi va in errore dicendomi "Necessario oggetto [object]"
Codice PHP:
'Utilizzo oggetto DOM per caricare il file xml
Set objXML = CreateObject("msxml2.DOMDocument.3.0")
objXML.async = false
objXML.setProperty "ServerHTTPRequest", True
objXML.validateOnParse =false
objXML.preserveWhiteSpace = false
Set Nodo = objXML.getElementsByTagName("item")
For Each objNodi In Nodo
For Each objNodo In objNodi.childNodes
Select Case objNodo.nodeName
Case "item id=""0"""
item = objNodo.firstChild.nodevalue
End Select
Next
Next
Soluzioni per qualsiasi dei 2 problemi?
A presto
Fabio