Avatar billede hansen Nybegynder
26. april 2008 - 15:48 Der er 11 kommentarer og
1 løsning

Hent variabel fra XML via function

Hej, så har jeg brug for lidt hjælp igen

Jeg har en XML fil der indeholder diverse hjælpetekster mm. som jeg godt kunne tænke mig at kunne trække via en function.

XML fil
<?xml version="1.0" encoding="iso-8859-1"?>
<config>
    <METAactive>Aktiv</active>
    <METAtitle>Titel</title>
    <METAdescription>Beskrivelse</description>
    <METAkeyword>Nøgleord</keyword>
</config>

Functionskaldet kunne se sådan her ud

CallXML Session("lang"),METAdescription

Kan du hjælpe mig, tak.
Avatar billede bauerdata Nybegynder
12. maj 2008 - 00:12 #1
start og slut tag skal være ens
eller er der noget jeg har overset ?
Avatar billede arne_v Ekspert
12. maj 2008 - 00:17 #2
Der mangler nok en "META" i alle slut tags.

doc.SelectSingleNode("//config/METAtitle").Text

vil hente titlen (forudsætter at XML filen er indlæst i et DOMDocument).
Avatar billede hansen Nybegynder
12. maj 2008 - 18:37 #3
Hej begge to, ja, der er glemt et META i alle sluttag.
Jeg er ikke helt stiv i XML og DOM, kan du evt. linke eller komme med et brugbart eksempel på hvordan det kunne være?
Avatar billede arne_v Ekspert
12. maj 2008 - 19:06 #4
Set doc = Server.CreateObject("Microsoft.XMLDOM")
doc.Async = False
doc.Load(Server.MapPath("blabla.xml"))
Response.Write doc.SelectSingleNode("//config/METAtitle").Text
Avatar billede arne_v Ekspert
12. maj 2008 - 19:11 #5
Jeg antager at du bruger VBScript.
Avatar billede hansen Nybegynder
13. maj 2008 - 11:53 #6
Tak, kigger på det senere i dag, og ja, jeg benytter VB script
Avatar billede hansen Nybegynder
18. maj 2008 - 22:04 #7
Hej igen, beklager den lange ventetid, der har desværre ikke været tid før nu til at teste.

Jeg har oprettet dette asp dokument:
<%
Set doc = Server.CreateObject("Microsoft.XMLDOM")
doc.Async = False
doc.Load(Server.MapPath("xmltext.xml"))
Set doc = Nothing

Response.Write doc.SelectSingleNode("//config/METAdescription").Text
%>

som læser i dette xml dokument:
<?xml version="1.0" encoding="iso-8859-1"?>
<config>
    <METAactive>Aktiv</active>
    <METAtitle>Titel</title>
    <METAdescription>Beskrivelse</description>
    <METAkeyword>Nøgleord</keyword>
</config>

Men det giver desværre en fejl:

Microsoft VBScript runtime error '800a01a8'

Object required

/xmltoasp/read_xmltext.asp, line 16


Kan i se hvad der er gået galt?
Avatar billede arne_v Ekspert
18. maj 2008 - 22:42 #8
Set doc = Nothing

og så kalde en metode på doc bagefter duer ikke !

Set doc = Nothing

skal til sidst !
Avatar billede hansen Nybegynder
22. maj 2008 - 17:21 #9
Hej Arne, det giver mig det samme problem, selv om der er ændret i koden så set doc = nothing til sidst.

Har du flere gode forslag?

FEJL:
Microsoft VBScript runtime error '800a01a8'

Object required: '[object]'

/xmltoasp/read_xmltext.asp, line 16
Avatar billede arne_v Ekspert
23. maj 2008 - 22:17 #10
proev lige og vis hele kode - og marker hvad linie 16 er
Avatar billede hansen Nybegynder
24. maj 2008 - 17:03 #11
Fandt fejlen, der var nogle stavefejl i XML filen, beklager meget, giver du et svar Arne, tak for hjælpen.
Avatar billede arne_v Ekspert
24. maj 2008 - 17:24 #12
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester