IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

XML SoapClient SimpleXMLElement


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2015
    Messages : 1
    Points : 3
    Points
    3
    Par défaut XML SoapClient SimpleXMLElement
    Bonjour,

    j'ai quelques soucis pour parser un fichier XML de cette forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
       <soap:Body>
          <Action xmlns="www.blabla.fr/getdata">
             <Request>
                <Username>login</Username>
                <Password>motdepasse</Password>
                <Language>FR</Language>
                <Country>FR</Country>
                <ChargeReference></ChargeReference>
                <Operation>AddCompanies</Operation>
                <Portfolios>
                   <Portfolio Id="111111">
                      <Entreprises>
                         <Entreprise>
                            <Siren>0000000000</Siren>
                         </Entreprise>
                      </Entreprises>
                   </Portfolio>
                </Portfolios>
             </Request>
          </Action>
       </soap:Body>
    </soap:Envelope>
    Car j'obtiens une erreur du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Warning: simplexml_load_file(): /xml/request.xml:4:
     namespace warning : xmlns: URI www.blabla.fr/getdata is not 
    absolute
    En tentant de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $request = simplexml_load_file(dirname(__FILE__).'/xml/request.xml');
     
        echo '<pre>'.print_r($request,true).'</pre>'; exit;
    Tandis qu'en donnant comme entrée le xml suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <Request>
                <Username>login</Username>
                <Password>motdepasse</Password>
                <Language>FR</Language>
                <Country>FR</Country>
                <ChargeReference></ChargeReference>
                <Operation>AddCompanies</Operation>
                <Portfolios>
                   <Portfolio Id="111111">
                      <Entreprises>
                         <Entreprise>
                            <Siren>0000000000</Siren>
                         </Entreprise>
                      </Entreprises>
                   </Portfolio>
                </Portfolios>
             </Request>
    Je n'ai aucun soucis, pour récupérer le xml sous forme de tableau.

    Ma question est de savoir comment à partir du xml qui fonctionne, je peux intégrer les entetes pour obtenir le premier XML car j'ai ensuite besoin d'utilier SoapClient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $wsdl = "https://www.blabla.fr/GetData/test.asmx?WSDL";
        $client = new SoapClient($wsdl);
     
        //$reponse = $client->Action(urlencode($request));
        $reponse = $client->Action($request);
     
        return $reponse;

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    essaye de rajouter "http://" comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Action xmlns="http://www.blabla.fr/getdata">

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Parcours XML à plusieurs niveaux PHP Xmlreader SimpleXMLElement
    Par gyllom dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 20/10/2013, 14h34
  2. [XML] Faire un xml en avec simplexmlelement
    Par jameson dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 03/12/2010, 13h47
  3. [SimpleXML] Parser un flux xml avec SimpleXMLElement
    Par DeezerD dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 22/11/2006, 18h07
  4. Débutant XML
    Par viny dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 25/07/2002, 12h07
  5. Pas de casse dans les XML
    Par :GREG: dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/07/2002, 13h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo