|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() |
Bonjour, je trouve des difficultés pour afficher un tableau, récupéré comme résultat d’une méthode d’un service web SOAP.
Voila mon code : Code :
|
||
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé
![]() Inscription : janvier 2005 Messages : 2 287 ![]() |
Citation:
Le classmap sert a faire un mapping entre les types de ton WSDL et tes classes PHP pour stocker le résultat. Regardes la: http://fr3.php.net/manual/fr/functio...-construct.php A mon avis il faudra plutot faire getTableau("manager", "manager"); Mais je ne peux pas l'affirmer sans voir le WSDL... Bon courage Koopajah |
|||
|
|
00
|
|
|
#3 | |
|
Nouveau Membre du Club
![]() |
oui c'est ca, manager, manager c juste le username et password.
le probleme c pas ca. comment afficher mon resultat de la methode getTableau() ? quand je fais un print_r($tab); voila ce qu'il m'affiche : Citation:
je veux savoir comment faire un for ou while pour parcourir les elements de mon tableau. |
|
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() Inscription : janvier 2005 Messages : 2 287 ![]() |
Comme tu le vois dans le dump de la réponse, tu récupères pas un tableau au sens tableau associatif de PHP.
Tu récupères une classe. En fait il faut que crées en PHP des classes qui correspondent aux types de ton WSDL et qu'ensuite tu utilises le classmap de new SoapClient() pour dire "ma classe Requete équivaut au type Request de mon WSDL" etc. |
|
|
00
|
|
|
#5 | ||
|
Nouveau Membre du Club
![]() |
Voila la partie ou la methode GetTableau est decrite dans le fichier WSDL
Code :
|
||
|
|
00
|
|
|
#6 | |||
|
Expert Confirmé
![]() Inscription : janvier 2005 Messages : 2 287 ![]() |
Quand tu vois la réponse :
Citation:
elle a comme variable de classe : out qui est lui aussi un objet. ce out est une instance de classe de type B qui a pour variable de classe : BillingPlan qui est lui meme un tableau d'objets de class C Cette class C a pour variable de classe: amount assigned description etc. Donc admettons que tu veuilles afficher tous les "amount" tu vas faire (apres récupération de la réponse dans $tab) Code :
|
|||
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() |
Merci pour ton aide,
mais dis moi comment faire pour des creer des classes qui correspondent aux types de ton WSDL ? et comment utiliser classmap de new SoapClient() pour dire "ma classe Requete équivaut au type Request de mon WSDL" ? desole je debute peux tu me donner un exemple ? ou un lien vers un tuto . |
|
|
00
|
|
|
#8 | |||
|
Expert Confirmé
![]() Inscription : janvier 2005 Messages : 2 287 ![]() |
Citation:
Tu peux voir dans ce WSDL, que donc la fonction GetTableau ne prend aucun paramètre et qu'en retour elle renvoie un objet de type ArrayOfBillingPlan Donc tu dois avoir qq part dans le WSDL la définition du type ArrayOfBillingPlan qui doit etre un tableau d'un type complexe BillingPlan qui est ce que tu cherches (qui contient Amount, etc.) Par ailleurs c'est pas exactement ca non plus parce que getTableau ne te renvoie pas un ArrayOfBillingPlan directement. Ton Webservice te renvoie un complex type qui a un seul élément : out et qui contient le tableau que tu cherches |
|||
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() |
Merci pour ton aide, ton code a fonctione, j'ai pas tres bien compris a 100% mais je v etudier ton code
Merci |
|
|
00
|
|
|
#10 | |
|
Expert Confirmé
![]() Inscription : janvier 2005 Messages : 2 287 ![]() |
Citation:
Il faut que tu comprennes clairement quels sont les types de ton WSDL et voir un complex Type comme étant une classe PHP et chaque element de ce complex type comme étant une variable de classe. |
|
|
|
00
|
|
|
#11 |
|
Nouveau Membre du Club
![]() |
je me pose la question : il y a un outil qui va me générer mon code client php en fonction du WSDL ?
|
|
|
00
|
|
|
#12 | |
|
Invité régulier
![]() Inscription : mai 2012 Messages : 6 ![]() |
Citation:
S'il vous plait je veux bien récupérer un tableau d'un web service (écrit en php) , je veux le récupérer dans un code java (android) , je suis débutante et j'ai pas vraiment trouvé une grande chose qui me guide . Merci |
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com