Vai al contenuto
PLC Forum


Xml E Asp - scambio dati


suibaf

Messaggi consigliati

Salve ragazzi. Stavo danto un'occhiata a questi 2 file di cui vi posto il codice. (è molto breve).

Il mio obbiettivo è quello di prendere dei dati da un file xml attraverso un file asp.

file esempio.XML:

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

<listaprodotti>

<prodotto id="1" nome="Sum41 - Does this look infected">Ultimo album del famoso gruppo punk-rock</prodotto>

<prodotto id="2" nome="Iron Maiden - The best of the beast">Album fantastico!</prodotto>

</listaprodotti>

Copiato pari pari da internet.

File index.ASP:

<%

Set objXML = Server.CreateObject("Msxml2.DOMDocument.4.0")

'Carico i dati XML

objXML.async = False

objXML.load(Server.MapPath("esempio.xml"))

'Seleziono l'oggetto

set objData = objXML.selectSingleNode("listaprodotti/prodotto[[at]id=2]")

Response.Write(objData.Text)

set objData = nothing

'Pulizia

Set objXML = nothing

%>

Ecco, lanciando il file asp da un server web ovviamente dovrei avre come risultante l'oggetto che sta in esempio.XML che ha id = 2. Invece ho solo un errore:

Tipo di errore:

Errore di run-time di Microsoft VBScript (0x800A01A8)

Necessario oggetto: 'objData'

Qualcuno mi sà aiutare?

Ahh l'esempio l'ho preso da: http://www.minifloppy.it/xml/default.asp?p...lo&idcat=2&id=7

Grazie

Fabio

Link al commento
Condividi su altri siti


Ciao.

Ho provato quell'esempio (copia-incolla dal tuo post) e sul mio pc locale funziona a meraviglia.

ho solo modificato questa linea:

set objData = objXML.selectSingleNode("listaprodotti/prodotto[[at]id=2]")

sostituendo [at] con il simbolo giusto (com'è nella pagina che hai linkato).

Senza questa ovvia sostituzione mi da invece un altro errore:

Tipo di errore:

msxml4.dll (0x80004005)

Expression expected. listaprodotti/prodotto[-->[<--at]id=2]

Comunque credo che l'errore sia altrove..

il metodo load dell' objXML.load se fallisce ritorna false (e quindi non genera un errore) (vedi MSDN Library..da consultare sempre!!)

sempre da MSDN Library, riferito a selectSingleNode:

Return Value

An object. Returns the first node that matches the given pattern-matching operation. If no nodes match the expression, returns a null value.

Modificato: da Massimo Maggi
Link al commento
Condividi su altri siti

x nll,

non sono sicuro di aver capito bene cosa intendi dire.

Forse ti riferisci al fatto che l'estensione del file è scritta in maiuscolo mentre nel codice è in minuscolo?

Non credo che possa essere quello il problema, perchè il contenuto del file XML è case sensitive, non credo anche il nome del file (su piattaforma Windows, in Linux è diverso).

Ciao

Massimo

Link al commento
Condividi su altri siti

Nel codice è case-sensitive anche il nome del file e, ma non sono sicuro, è così anche per ASP (ho studiato ed utilizzato JSP, e mi pare che si dicesse quello nei numerosi rimandi all'ASP)

Link al commento
Condividi su altri siti

Ragazzi miei, ho risolto............anzi Massimo Maggi ha risolto. Il padre è in gamba ma suo figlio è praticamente spaventoso..........un genio e ha solo 15 anni!!!!!!!!!!!!! A 15 anni io ero una specie di Tom Sawyer. Il computer non sapevo neanche cosa fosse. Mi interessavano le fionde, le biciclette da cross e le lucertole da uccidere!!

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...