Hej!
set node = xmlDoc.documentElement.selectSingleNode("/ManagerZone_MatchList/Match[@id = 149612250]/Team[@field = 'away']")
if not node is nothing then
response.write node.getAttribute("goals")
end if
11 svar · 1 007 visningar · startad av asp
Hej.
Skulle någon vänlig själ kunna visa ett enkelt exempel på hur man hämta XML-data från denna sida?
http://www.managerzone.com/xml/team_matchlist.php?sport_id=1&team_id=78700&match_status=1&limit=50
Saken är den att nu står det goals="2" istället för <goals>2</goals> som jag har arbetat med innan.
/ Marcus
Hej!
set node = xmlDoc.documentElement.selectSingleNode("/ManagerZone_MatchList/Match[@id = 149612250]/Team[@field = 'away']")
if not node is nothing then
response.write node.getAttribute("goals")
end if
Tackar. Är lite nybörjare på detta område. Denna kod retunerar inget, inget felmeddelande alltså utan bara tomt.
<%
Response.ContentType = "text/plain"
set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load (Server.MapPath("http://www.managerzone.com/xml/team_matchlist.php?sport_id=1&team_id=78700&match_status=1&limit=50"))
set node = xmlDoc.documentElement.selectSingleNode("/ManagerZone_MatchList/Match[@id = 149612250]/Team[@field = 'away']")
if not node is nothing then
response.write node.getAttribute("goals")
end if
%>
/ Marcus
Du vill nog inte ha med Server.MapPath-delen.
Vid fel kan du använda följande:
xmlDoc.load(...)
if xmlDoc.parseError <> 0 then
response.write xmlDoc.parseError.reason
end if
Hej igen.
Vill inte vara krävande på något vis. Men tanken är att jag skall loop igenom alla matcher. Så om någon väldigt vänlig själ hade lust att hjälpa med göra en funktion som ser ut något såhär:
For i = 0 to node.all
hemmalag = node.getAttribut("home")
bortalag = node.getAttribut("away")
hemmaid = node.getAttribut("teamid")
'osv...
'Spara enskild match i databasen. Klarar jag själv dock ;-)
Next
set nodes = obj.documentElement.selectNodes("Match")
for each node in nodes
'home team
set home = node.selectSingleNode("Team[@field = 'home']")
homeGoals = home.getAttribute("goals")
'away team
set away = node.selectSingleNode("Team[@field = 'away']")
awayGoals = away.getAttribute("goals")
'...
next
Tusen tack Peter.
Fungerade dock inte med förra XLM-kopplingen, dock med denna:
set xml = createObject("Msxml.DOMDocument")
xml.async = false
xml.setProperty "ServerHTTPRequest", true
xml.load("http://www.managerzone.com/xml/team_matchlist.php?sport_id=1&team_id=78700&match_status=1&limit=50")
/ Marcus
Bra att veta (y)
set nodes = xml.documentElement.selectNodes("Match")
for each node in nodes
Finns det något sätt att loopa igenom backlänges istället. Så den börjar med den äldsta matchen, d.v.s. längst ner på sidan.
for i = nodes.length-1 to 0 step -1
set home = nodes.item(i).selectSingleNode("Team[@field = 'home']")
...
Tackar ännu en gång. Får se om det blir det slutgiltiga svaret denna gång... =)
Fick du till det? kan du skriva ut HELA koden? sitter själv och klurar på detta men kommer ingen vart alls x(