|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | |||||
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Bonjour,
J'essaye désespérément de faire fonctionner un bête exemple de web service en utilisant l'extension SOAP de PHP 5 mais je ne m'en sors pas. Voici mon code "service.php" Code :
Code :
Citation: Citation:
Merci d'avance |
|||||
|
|
00
|
|
|
#2 | ||
|
Membre éclairé
![]() |
Je travaille dessus en ce moment aussi...
En fait dans tes arguments pour créer tes Client/Server l'URI ne sert pas à grand chose si ce n'est identifié le webservices (tu peux y mettre tartempion ca le dérangera pas Par contre quand tu crée ton client tu dois rajouter dans ton array le champ "location" qui indique l'adresse du web services donc ca donnera quelque chose du genre : Code :
|
||
|
|
00
|
|
|
#3 | ||||
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Merci beaucoup pour ton aide
Aprés correction j'ai l'erreur : Citation:
Code :
Et maintenant j'ai l'erreur suivante: Citation:
|
||||
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Bonjour
Quand tu as ce genre de réponse 'Looks like we got no XML...' ca signifie que tu as une erreur coté serveur et que du coup ton client ne recoit pas la réponse attendue. Une chose utile est d'utiliser le mode trace quand tu debug. Ajoutes ca a ton array(): Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() |
Alors cette erreur retient là parce que tu risque de la rencontré trèèèèès souvent
Quand il te dit que ton résultat n'est pas formaté selon le XML c'est qu'en général il y a eu : soit un echo fait sur la page du serveur (dans ce cas effectivmeent ce n'est pas du xml valide), soit une erreur php qui a été affiché et donc la page n'affiche plus du XML. Dans les deux cas va directement sur la page de ton serveur pour voir eventuellemnt les erreurs commises. Quand le serveur est bon normalement il t'affiche une page xml. |
|
|
00
|
|
|
#6 | |||
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Merci à tous, ça se précise
j'ai viré Code :
j'ai activé la ligne: 'always_populate_raw_post_data = On' dans php.ini et maintenant l'erreur c'est : Citation:
Y a t-il une fonction pour ça ? |
|||
|
|
00
|
|
|
#7 |
|
Membre éclairé
![]() |
Dans quel cas tu obtient cette erreur?
Si c'est en ouvrant le serveur c'est normal.... parce qu'il ne recoit pas les information venant d'un client. Donc a partir de la il faut ouvrir ton client pour voir si ca marche. Par contre si ca te fais ca en ouvrant le client c'est bizar |
|
|
00
|
|
|
#8 | ||||||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
J'ai testé ton code chez moi comme ca
directement dans mon www, le fichier service.php Code :
Code :
Code :
|
||||||
|
|
00
|
|
|
#9 |
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Non, c'est bien en ouvrant le client (cad je charge la page client.php dans IE) que j'ai cette erreur
|
|
|
00
|
|
|
#10 |
|
Membre éclairé
![]() |
Tu peux remettre tes deux pages?
|
|
|
00
|
|
|
#11 | ||||
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Ok, voilà :
"service.php" Code :
Code :
|
||||
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Tu as bien redémarré ton serveur apache apres avoir changé le php.ini?
Sinon essaie d'enlever les fonctions que je t'ai fait rajouter (entre les <pre>) histoire de voir si ca n'est pas la cause d'une erreur chez toi. |
|
|
00
|
|
|
#13 | |||
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Citation:
Citation:
Citation:
|
|||
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Une dernière possibilité
Mes premières erreurs avec les webservices venaient d'un truc tout bete, j'avais laissé des trucs avant le <?php ou apres le ?> comme un espace, un saut de ligne etc... Ca causait des erreurs à propos des headers, est-ce que tu n'as pas ce genre de chose dans le script de ton service?? |
|
|
00
|
|
|
#15 |
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Dans le fichier service.php le "<php" commence sur la 2eme ligne. Je l'ai mis sur la 1ere mais ça change rien
Est ce que ça pourrait venir de ma version de Apache (2.0.59) ? |
|
|
00
|
|
|
#16 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Non j'ai la meme version d'Apache que toi justement, tu as quelle version de php?
|
|
|
00
|
|
|
#17 |
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Php 5.2.2
|
|
|
00
|
|
|
#18 | ||
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Bon ben on a la meme version d'Apache et de php, chez moi ton code marche très bien.
Tes deux fichiers se trouvent bien dans ../www/service/ ? Coté serveur, essaie d'écrire dans un fichier des infos pour savoir à quel niveau tu arrives Avant le handle écrit ca: Code :
|
||
|
|
00
|
|
|
#19 | |
|
Membre habitué
![]() Inscription : septembre 2003 Messages : 595 ![]() |
Citation:
et service.php se trouve dans : 'http://localhost/service/service.php' mais je ne pense pas que ça change grand chose. Toutefois, j'ai mis client.php dans 'http://localhost/service' puis je l'ai chargé dans IE à partir de là, mais le résultat est le même. J'ai mis ton code juste avant le handle. Il me génère le fichier aaa.txt dans lequel il est écrit: Request : et puis c'est tout. On dirait que la variable $HTTP_RAW_POST_DAT est vide. Je comprend plus rien là! |
|
|
|
00
|
|
|
#20 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
Bon au moins on sait d'ou vient l'erreur. Tu as un probleme avec ton HTTP_RAW_POST_DATA.
PErsonnellement dans mon php.ini je n'ai pas eu besoin de mettre le always_populate_raw_post_data à On c'est toujours commenté. Mais as-tu modifié le bon php.ini ? celui dans Apache2/bin, parce qu'il y en a plusieurs sur la machine en général et un seul est valide |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com