[RESOLU] webservice afficher le résultat xml

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] webservice afficher le résultat xml

Re: [RESOLU] webservice afficher le résultat xml

par foetus69 » 23 août 2013, 11:57

Coucou :)

Oui c'est pas faux ! mais sur quelle donnée m'appuyer puisque j'étais dans l'incapacité de compter mes "Singer" par un getElement...

En tout cas ton aide est toujours aussi précieuse. MERCi !

Re: [RESOLU] webservice afficher le résultat xml

par moogli » 22 août 2013, 19:13

Pour parcourir un tableau (ou itérer dessus) tu peux utiliser simplement un foreach ;)


@+

Re: webservice afficher le résultat xml

par foetus69 » 22 août 2013, 16:42

J'ai trouvé !!!

Je pensais transformer ça en objet xml mais j'avais des erreurs alors j'ai procédé ainsi :

$Max= sizeof($objReponse->ReturnListSingers->any["Singer"]);

et là ça me renvoie bien mon chiffre max, du coup je peux tester proprement ma boucle ;)

MERCIIIIIIIIIIIIIIIIIIIIIIII

Re: webservice afficher le résultat xml

par foetus69 » 22 août 2013, 16:23

Bonjour, avec ton astuce moogli j'ai encore pu arriver à mes fins =D>

C'est vrai que je n'ai pas le réflexe très utile d'utiliser les var_dump et autre <pre>

Du coup j'ai réussi à catcher la valeur voulue :

echo $objReponse->ReturnListSingers->any["Singer"]["$i"]->nom; //via un for $i=0.

Le dernier point c'est que je voudrais compter le nombre de noeuds "Singer" car pour le moment j'indique le chiffre exact et quand ça dépasse j'ai une erreur :
Notice: Undefined index: 4 par exemple

J'aimerai m'appuyer sur un quelque chose.length pour paramétrer ma boucle mais je ne vois pas bien comment implémenter cette fonction. Un nouveau tuyau ?

:priere:

Re: webservice afficher le résultat xml

par moogli » 22 août 2013, 00:44

Salut,

Que donne un var_dump($objReponse) ? (Colle le résultat ici)

Sinon, sur le principe tu devrais avoir plusieurs singer, donc une liste de singer (en php un tableau) sur lequel tu va itérer, avec un foreach par exemple.

Pour info le XML fournit est invalide mais je suppose qu'il s'agit d'une erreur a la copie ?

@+

webservice afficher le résultat xml

par foetus69 » 21 août 2013, 17:13

Bonjour,

J'ai construit une fonction pour gérer l'appel à un webservice et lui passer les valeurs qui vont bien seulement je connais pas la méthode pour afficher le résultat de mon appel dans ma page php. Comment faire pour afficher le xml ?

Là j'ai réussi un truc c'est d'afficher le code, la description ou le code du statut mais impossible d'appeler les entrées qui m'intéressent.

Code : Tout sélectionner

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:getSingers xmlns:ns2="beans.ws.singers.fr" xmlns:ns3="fr.singers.beans"> <ReturnListSingers> <status> <code>0</code> <description>Opération réussie</description> </status> <ns3:Singer> <nom>BENABAR</aire>...
Comment je peux récupérer BENABAR et les autres "Singer" ?

Pour récupérer la description ou le code je fais par exemple : echo $objReponse->ReturnListSingers->status->code ou description;

Par avance merci de votre précieuse aide.

Féfé