Jump to content
PLC Forum


Xml E Asp - scambio dati


suibaf
 Share

Recommended Posts

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 to comment
Share on other sites


Massimo Maggi

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.

Edited by Massimo Maggi
Link to comment
Share on other sites

Massimo Maggi

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 to comment
Share on other sites

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 to comment
Share on other sites

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 to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...