Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/01/2011, 14h57   #1
Invité régulier
 
Inscription : juin 2007
Messages : 26
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 26
Points : 6
Points : 6
Par défaut Pb Recupération XML

Bonjour à tous,
Voila mon problème en espérant que vos lumières comme toujours m'éclaireront.
Je veux récupérer du xml envoyé par une url, googlemaps en l’occurrence.
J'y arrive presque sauf que je n'ai pas accès à l'ensemble des balises xml apparemment.

voila mon code :
###### ADRESSE INTERROGÉE contenant des caractère unicode (Pas de pb !) #######
Code :
1
2
 
$adresse = 'http://maps.google.com/maps/geo?output=xml&oe=utf-8&q=Ch\u00e2teau (Traverse du Ch\u00e2teau), 14e%2013014%20Marseille';
##################### INFO XML RENVOYÉE PAR L'URL #####################
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<kml xmlns="http://earth.google.com/kml/2.0"><Response> 
  <name>Ch\u00e2teau (Traverse du Ch\u00e2teau), 14e 13014 Marseille</name> 
  <Status> 
    <codea>200</codea> 
    <request>geocode</request> 
  </Status> 
  <Placemark id="p1"> 
    <address>13014 Marseille, France</address> 
    <AddressDetails Accuracy="5" xmlns="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"><Country><CountryNameCode>FR</CountryNameCode><CountryName>France</CountryName><AdministrativeArea><AdministrativeAreaName>Provence-Alpes-Côte d'Azur</AdministrativeAreaName><SubAdministrativeArea><SubAdministrativeAreaName>Bouches-du-Rhône</SubAdministrativeAreaName><Locality><LocalityName>Marseille</LocalityName><PostalCode><PostalCodeNumber>13014</PostalCodeNumber></PostalCode></Locality></SubAdministrativeArea></AdministrativeArea></Country></AddressDetails> 
    <ExtendedData> 
      <LatLonBox north="43.3668447" south="43.3150054" east="5.4162879" west="5.3663655" /> 
    </ExtendedData> 
    <Point><coordinates>5.3887200,43.3426011,0</coordinates></Point> 
  </Placemark> 
</Response></kml>

##################### MAINTENANT LE PARSER XML #####################
Code :
1
2
3
 
$xml = new SimpleXMLElement($address, NULL, TRUE);
print_r($xml);  // Affichage du tableau
##################### LE PRINT_R DONNE CA ... Y A PAS TOUT LE XML D'ORIGINE !!!! #####################
SimpleXMLElement Object
(
[Response] => SimpleXMLElement Object
(
[name] => Ch\u00e2teau (Traverse du Ch\u00e2teau), 14e%2013014%20Marseille
[Status] => SimpleXMLElement Object
(
[codea] => 602
[request] => geocode
)
)
)
######### // BOUCLE SUR LE PLACEMARK POUR AVOIR LES COORDONNEES, .... CA MARCHE PAS !!!!!!!!! ########
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
foreach ($xml->Response->Placemark as $pm)
{
    echo $pm->Point->coordinates;
    echo '<br />';
    echo $pm->AddressDetails;
    echo '<br />';
}
 
// AFFICHAGE DU CODE -> LA CA MARCHE
$status = $xml->Response->Status->codea;
echo $status; // CA CA MARCHE !

Comment faire pour avoir acces au reste du XML et ainsi recuperer la balise coordinate.
Merci beaucoup par avance pour vos idées ou solutions
grandpa006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h03.


 
 
 
 
Partenaires

Hébergement Web