109 messaggi dal 19 febbraio 2001
ho un file xml di questo tipo

<?xml version="1.0" encoding="ISO8859-1" ?>
<InformazioniSito>
<Info>
<Titolo>bla bla bla</Titolo>
<Testo>bla bla bla</Testo>
</Info>
</InformazioniSito>

e il file asp che lo "legge" è questo

<%
'Inizializziamo il Parser MS XML...
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = False

'Carica il file XML
strFile = Server.MapPath("bookmarks.xml") 'perche lo chiamo con
server.execute
objXML.Load (strFile)

Set AllItems = objXML.selectNodes("//InformazioniSito/Info")
For i = 0 to (AllItems.Length - 1)

set Titolo=AllItems(i).selectNodes("Titolo")
set Testo=AllItems(i).selectNodes("Testo")

if "" & Titolo(0).text & "" = "Note Legali" then

Response.Write("" & Testo(0).text & "" & vbcrlf)

end if

if "" & Titolo(0).text & "" = "Chi Siamo" then

Response.Write("" & Testo(0).text & "" & vbcrlf)

end if

next
%>



però non va piu'avanti del for, avendo come risultato una pagina bianca
perche ?
2.584 messaggi dal 14 maggio 2001
Secondo me con questa condizione non vai avanti...
For i = 0 to (AllItems.Length - 1)

Se hai un solo AllItems la sua length sarà 1 e un ciclo:
For i = 0 to 0

non viene mai eseguito...
109 messaggi dal 19 febbraio 2001
no, il file xml ha più nodi..
ne ho messo uno per fare vedere la struttura
3.122 messaggi dal 16 maggio 2002

Se hai un solo AllItems la sua length sarà 1 e un ciclo:
For i = 0 to 0

non viene mai eseguito...

Invece viene eseguito una volta!

blasfemo, abituati ad applicare un Server.HTMLEncode al testo che vuoi stampare a video (su una pagina html), soprattutto se sei incerto sul suo contenuto (se contiene < e > può essere un casino senza htmlencode).
Prova e poi fammi sapere.
Modificato da Raynor il 17 dicembre 2003 09.24 -

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
109 messaggi dal 19 febbraio 2001
Server.HTMLEncode ...
cosa sarebbe?
come lo applico al mio script ?
3.122 messaggi dal 16 maggio 2002
Il metodo HTMLEncode dell'oggetto Server codifica una stringa, passata come argomento, in modo da essere visualizzata correttamente su una pagina html, cioè in modo che gli eventuali tag al suo interno non vengano interpretati.
Perciò trasforma le < in &lt;, > in &gt;, & in &amp;, " in &quot; ...

Per applicarlo basta che lo passi al Response.Write e come argomento gli dai il testo che avresti invece dato a quest'ultimo
Ad esempio, se tu avessi scritto

Response.Write(stringa)

ora scrivi

Response.Write(Server.HTMLEncode(stringa))

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
109 messaggi dal 19 febbraio 2001
si, ma come questo può far funzionare il mio script?
all'interno dei tag xml c'è testo e codice html come <br> ecc... che server per il corretto output
3.122 messaggi dal 16 maggio 2002
Se lo script avesse preso anche i tag xml non li avresti visti se non guardando il codice della pagina.

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.