Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP] XML ophalen

Pagina: 1
Acties:

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 29-11 21:32
mijn vorige post was idd niet echt volledig. (had ook niet verwacht dat er zo snel zou worden gereageerd)
beste lezers,

ik ben al een beetje bekent met asp. maar wil gaat nu iets met xml doen.
ik heb een xml bestand wat 0 of 1 kan zijn. nou zou ik graag met asp dat xml bestand willen uitlezen.

hoe kan ik dat het best doen?

het url waar het omgaat is http://internet-adres/servers/status.php
maar het volgende had ik al.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Set xml = Server.CreateObject("Microsoft.XMLHTTP")
        xurl="http://10.2.1.8/squidcontrol/xml.php"
        xml.Open "GET", xurl, False
         'on error resume next 
        xml.Send ""
        HTTPReturnCode = xml.status
        x_Result = xml.ResponseText
response.write x_Result
        stringc1 = InStr(x_Result,"<status>")
        stringc2 = InStr(x_Result,"</status>")
        stringc1 = stringc1 + len("<status>")
        stringc2 = stringc2 - stringc1
        status = Mid(x_Result,stringc1,stringc2)
response.write status
%>


wat ik ook in het xml bestand zet het is altijd 1
het xml bestand ziet er zo uit:
code:
1
2
3
4
5
6
  <?xml version="1.0" encoding="iso-8859-1" ?> 
- <server>
- <odi>
  <status>0</status> 
  </odi>
  </server>


ps. sorry voor de vorige onvolledige post!

  • disjfa
  • Registratie: April 2001
  • Laatst online: 04-11 11:05

disjfa

be

En nu? Wat heb je al gedaan? Wat gaat er fout? Wat is het probleem...?

disjfa - disj·fa (meneer)
disjfa.nl


  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 29-11 21:32
disjfa schreef op vrijdag 14 september 2007 @ 10:58:
En nu? Wat heb je al gedaan? Wat gaat er fout? Wat is het probleem...?
Het probleem is dus. dat ik altijd een 1 terug krijgt. ook al poept het XML bestand 0 uit.

De bedoeling van dit schript moet worden. dat je op het intranet kan zien of het aan of uit staat. (met een plaatje.)
code:
1
2
3
4
5
6
7
<%
if status="1" then
  response.write "<img images/on.gif">
else
  response.write "<img images/off.gif">
end if
%>


maar ik krijg altijd een 1 terug

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 17:20

Janoz

Moderator Devschuur®

!litemod

Weet je wel zeker dat het script een 0 opgestuurd krijgt? De door jou geposte code maakt niet zomaar ineens een 0 van een 1. Waarschijnlijk komt er uit die xml iets anders dan je denkt of ergens zit wat chaching tussen waardoor je telkens naar een oude versie van de xml laat kijken.

Zou je trouwens ook even een fatsoenlijke titel kunnen voorstellen? Die kun je via een topic report doorgeven (handje bovenin)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 29-11 21:32
Janoz schreef op vrijdag 14 september 2007 @ 11:07:
Weet je wel zeker dat het script een 0 opgestuurd krijgt? De door jou geposte code maakt niet zomaar ineens een 0 van een 1. Waarschijnlijk komt er uit die xml iets anders dan je denkt of ergens zit wat chaching tussen waardoor je telkens naar een oude versie van de xml laat kijken.

Zou je trouwens ook even een fatsoenlijke titel kunnen voorstellen? Die kun je via een topic report doorgeven (handje bovenin)
ik begin idd nu te twijfelen of "HTTPReturnCode = xml.status" er wel voor zorgt dat ik de inhoud van het XML bestand krijg te zien.

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Klopt dat ook met de totale responsetext? Heb je die al bekeken. Zou het kunnen zijn dat er caching plaatsvindt? Als je Response.Write(Server.HTMLEncode(x_Result)) doet zie je waarschijnlijk iets meer.

  • TheNameless
  • Registratie: September 2001
  • Laatst online: 07-02 21:38

TheNameless

Jazzballet is vet!

Je kan het best gebruik maken van het XMLDom object om je XML uit te lezen.

ASP:
1
2
3
4
5
6
Dim objXml
Set objXml = Server.CreateObject("Msxml2.DOMDocument")

objXml.loadXML(xml.ResponseText)

status = CInt(objXml.selectSingleNode("/server/odi/status").text)

[ Voor 3% gewijzigd door TheNameless op 14-09-2007 11:19 ]

Ducati: making mechanics out of riders since 1946


  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 29-11 21:32
bigbeng schreef op vrijdag 14 september 2007 @ 11:13:
Klopt dat ook met de totale responsetext? Heb je die al bekeken. Zou het kunnen zijn dat er caching plaatsvindt? Als je Response.Write(Server.HTMLEncode(x_Result)) doet zie je waarschijnlijk iets meer.
Heb nu "Response.Write(Server.HTMLEncode(x_Result)) " gebruikt en idd het is een caching probleem als ik het ip-adres verander naar de server naam werkt hij wel gelijk. daarna werkt vernieuwen ook niet meer totdat ik het ip-adres weer invul.

bestaan daar ook nog opties voor om het caching heen te komen?

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Mogelijk kun je dat aangeven met properties op je XMLHttp object. Ik heb zelf wel eens een workaround gemaakt door een random string aan de request toe te voegen:

code:
1
xurl = "http://10.2.1.8/squidcontrol/xml.php?time=26156845623874"


Waarbij je het getalletje zelf genereert. Hier kun je de Rnd functie voor gebruiken.
Zie bijvoorbeeld deze pagina voor wat meer info:
http://docs.rinet.ru/ZhPP/ch34.htm

  • kartoenweb
  • Registratie: December 2004
  • Laatst online: 29-11 21:32
bigbeng schreef op vrijdag 14 september 2007 @ 11:48:
Mogelijk kun je dat aangeven met properties op je XMLHttp object. Ik heb zelf wel eens een workaround gemaakt door een random string aan de request toe te voegen:

code:
1
xurl = "http://10.2.1.8/squidcontrol/xml.php?time=26156845623874"


Waarbij je het getalletje zelf genereert. Hier kun je de Rnd functie voor gebruiken.
Zie bijvoorbeeld deze pagina voor wat meer info:
http://docs.rinet.ru/ZhPP/ch34.htm
ik heb er een random string bij gemaakt
code:
1
2
Randomize 
rndid = Int(Rnd * 999)


en nu werkt het prima.
jongens bedankt voor jullie tijd! super
Pagina: 1