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 :

[Tableaux] Problème de service web et tableau


Sujet :

Langage PHP

  1. #1
    hxt
    hxt est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 23
    Points : 15
    Points
    15
    Par défaut [Tableaux] Problème de service web et tableau
    Bonjour,

    J'ai un petit souci avec un tableau et un service web.
    En effet, j'ai le code 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
     
    $CONDUCTS = array();
     //--
     while (OCIFetchInto ($statement,$row,OCI_ASSOC)){
       $var = $row['NOCONDUCTEUR'];
       $var1 = $row['NOM'];
       $var2 = $row['PRENOMCONDUCTEUR'];
       $var3 = $row['CODECONDUCTEUR'];
       $var4 = $row['PARC'];
    	//
       $CONDUCTS["$i"] = array("$var","$var1","$var2","$var3","$var4");
       $i++;
      }
      //--
      ocilogoff($lk);
      return $CONDUCTS;
    Quand, j'appelle ce service depuis mon client, j'obtiens le message d'erreur suivant :

    Warning: Invalid argument supplied for foreach() in c:\program files\easyphp1-7\www\parck\listeconducts.php on line 41
    Or, quand je me crée une fonction toute bête et que j'appelle cette fonction, le tableau est bien renvoyé et je peux l'afficher sans problème.


    Alors déja ça, ca m'intrigue ? Cela est dû a quoi ?


    En faisant des tests, je me suis rendu compte que c'était le $var3 qui mettait le bazard.
    Quand je l'enleve, le tableau s'affiche bien du coté client.
    Or, la variable $var3 est, soit nulle, soit contient un chiffre.

    Quand, j'essaie d'initialiser la variable $var3 a 0 (ou une autre valeur quelconque), ca ne marche pas mieux.

    Comment cela se fait-il ? Comment je pourrais résoudre ce problème ?


    Merci d'avance,

    Cordialement,

  2. #2
    Membre averti
    Inscrit en
    Janvier 2004
    Messages
    533
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 533
    Points : 313
    Points
    313
    Par défaut
    Bonjour,

    essaie d'enlever les guillemets autour de $var3, étant donné que c'est un chiffre.
    N'oubliez pas le tag .
    Merci de ne pas envoyer de MP pour des problèmes techniques.

  3. #3
    hxt
    hxt est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Merci pour ta réponse.

    J'ai donc enlevé les guillemets et malheureusement, rien, toujours le même problème.

    Je viens encore de faire le test, mon tableau s'affiche très bien quand il est renvoyé par une fonction classique..mais j'ai le problème de foreach quand il est renvoyé par le service web..

    Si quelqu'un a une petite idée..

    Merci d'avance,

  4. #4
    hxt
    hxt est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Je suis en train d'essayer de débugger le service Web, je vous met les messages que j'obtiens.

    Error: Response not of type text/xml

    POST /test/SW_RenConducts.php HTTP/1.0
    Host: 127.0.0.1
    User-Agent: NuSOAP/0.7.2 (1.95)
    Content-Type: text/xml; charset=ISO-8859-1
    SOAPAction: ""
    Content-Length: 597
    <br />
    <b>Notice</b>: Undefined index: CODECONDUCTEUR in <b>c:\program files\easyphp1-7\www\test\sw_renconducts.php</b> on line <b>24</b><br />
    <br />
    C'est donc l'indéxation de mon tableau qui déconne. Mais pourtant, je fais la chose suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (!empty($var3)) $var3 = 1;
    ($var3 contient mon codeconducteur).

    Qu'est ce qu'il cloche ? Faut-il que je "configure" quelque chose dans la librairie nusoap ?

    Merci d'avance,

  5. #5
    hxt
    hxt est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Ok, j'ai trouvé une solution qui me permet de résoudre le problème.
    J'utilise la commande coalesce dans ma requête SQL comme ça, je remplace toute mes valeurs NULL par une autre valeur et ca passe nickel.

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

Discussions similaires

  1. [Web Service] Problème avec service web PHP (SOAP)
    Par daemyn dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 18/05/2010, 20h49
  2. Réponses: 10
    Dernier message: 22/05/2007, 12h21
  3. problème de services web
    Par bada dans le forum Services Web
    Réponses: 2
    Dernier message: 09/06/2006, 18h26
  4. [Tableaux] Problème de valeur dans un tableau (array)
    Par Flushovsky dans le forum Langage
    Réponses: 15
    Dernier message: 24/03/2006, 13h56
  5. Réponses: 2
    Dernier message: 19/12/2005, 12h23

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