J'essaie de définir la distance de conduite entre 2 points en utilisant l'API google maps. Il retourne un XML que je charge dans un objet XMLDOM. Cependant, je n'arrive pas à trouver comment je peux obtenir la valeur d'un enfant dans un enfant au sein d'un enfant ... J'ai lu le tutoriel de Microsoft mais il ne montre pas comment récupérer les valeurs du XML.ASP classique lecture des valeurs XML
Un XML exemple:
<DistanceMatrixResponse>
<status>OK</status>
<origin_address>Gentsesteenweg 5, 9200 Dendermonde, België</origin_address>
<destination_address>Veerstraat 39, 9200 Dendermonde, België</destination_address>
<row>
<element>
<status>OK</status>
<duration>
<value>117</value>
<text>2 min.</text>
</duration>
<distance>
<value>1061</value>
<text>1,1 km</text>
</distance>
</element>
</row>
</DistanceMatrixResponse>
La partie de mon code est:
Set XmlObj = Server.CreateObject("Microsoft.XMLHTTP")
strURL = "http://maps.googleapis.com/maps/api/distancematrix/xml?origins=" & dblFromLatitude & "+" & dblFromLongitude & "&destinations=" & dblToLatitude & "+" & dblToLongitude & "&mode=driving&language=" & strLanguage & "&sensor=false"
'DebugFile strURL
XmlObj.Open "POST", strURL, false
XmlObj.send
strResponse = XmlObj.responseText
Set XmlObj = Nothing
Set xmlLongLat = Server.CreateObject("Microsoft.XMLDOM")
xmlLongLat.async=false
xmlLongLat.loadXML(strResponse)
If Not xmlLongLat.GetElementsByTagName("DistanceMatrixResponse")(0).ChildNodes(0).GetElementsByTagName("row")(0).ChildNodes(0).GetElementsByTagName("element")(0).ChildNodes(0).GetElementsByTagName("distance")(0).ChildNodes(0) Is Nothing Then
dblDrivingDistance = Round(CDbl(Nz(xxmlLongLat.GetElementsByTagName("DistanceMatrixResponse")(0).ChildNodes(0).GetElementsByTagName("row")(0).ChildNodes(0).GetElementsByTagName("element")(0).ChildNodes(0).GetElementsByTagName("distance")(0).ChildNodes(0).NodeValue, 0))/1000,2)
Else 'xmlLongLat.GetElementsByTagName("element")(0) Is Nothing Then
dblDrivingDistance = 0
DebugFile "fgfzefzef"
End If 'xmlLongLat.GetElementsByTagName("element")(0) Is Nothing Then
Set xmlLongLat = Nothing
Je veux obtenir la "valeur" de la "distance", mais je ne tout simplement pas semblent réussir malgré avoir essayé de tout
Avez-vous déjà essayé la méthode «étape par étape»? Pourquoi ne stockez-vous pas la réponse dans une variable? – reporter