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

Flex Discussion :

Variables et URLs


Sujet :

Flex

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut Variables et URLs
    Bonjour,
    Je suis confronté à des petits problèmes dans mon apprentissage de Flex =P

    Le premier, pour obtenir l'adresse IP de l'ordinateur sur lequel je fais tourner mon appli, je charge un fichier xml qui a été généré par un script PHP.
    J'ai donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <mx:XML id="ipxml" source=".......\ip.xml"></mx:XML>
    Jusque là tout va bien, le xml est bien chargé, je peux l'utiliser comme dataProvider, l'IP est bien là, mais quand j'essaye de stocker cette IP dans une variable, plus rien ne fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private var ipcom:String = ipxml.ip[0].string;
    Mon but est de charger d'autres fichiers XML avec une URL dépendant de cette IP, google ne m'a pas expliqué comment faire.
    J'imagine que c'est un truc comme (une fois l'IP stockée dans var ipcom)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    source="http://".ipcom."/fichier.xml"
    source="http://" + {ipcom} + "/fichier.xml"
    Merci à l'âme charitable qui m'éclairera =)
    Bonne journée !

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Points : 1 710
    Points
    1 710
    Par défaut
    Bonjour,

    Il faudrait que tu nous montres à quoi ressemble ton fichier "ip.xml". Et sinon voici la documentation expliquant comment manipuler un object XML : http://livedocs.adobe.com/flex/3/htm...th_XML_04.html

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut
    Voilà le fichier ip.xml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?xml version="1.0" encoding="utf-8"?>
         <adress>
              <ip>
                   <string>
                        192.168.1.108
                   </string>
              </ip>
         </adress>

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Points : 1 710
    Points
    1 710
    Par défaut
    Je n'ai rien pour tester mon code donc n'hésite pas à me corriger si ça ne fonctionne pas. Mais tu devrais essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ipcom = ipxml.ip[0].string[0];
     
    // ou encore
     
    ipcom = ipxml.ip["string"];
    Les deux sont censés fonctionner d'après la doc.
    Pourrais tu confirmer lequel fonctionne stp ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut
    L'appli n'affiche plus rien quand je déclare la variable =/
    Et en faisant un trace (ipcom); :

    Main Thread (Suspended: TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.)
    test
    _test_mx_managers_SystemManager/create
    mx.managers::SystemManager/initializeTopLevelWindow
    mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::docFrameHandler
    mx.managers::SystemManager/docFrameListener

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut
    Trouvé, c'est passé comme ça =)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var ipcom:Object = ipxml.ip[0].string.toString();
    J'ai maintenant une variable String contenant le chemin du xml à charger.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var chemin = "http://xxx.xxx.xxx.xxx/fichier.xml"
    Au chargement de l'application, ma fonction creationCompleteHandler :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    private function creationCompleteHandler():void 
    		{	
    			var ipcom:Object = ipxml.ip[0].string.toString();
    			var http:String = "http://";
    			var fichier:String = "/fichier.xml";
    			var chemin:String = http + ipcom + fichier;
    			fichierxml.source = chemin;
     
    		}
    Chargement du fichier xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <mx:XML id="fixhierxml"></mx:XML>
    MAIS, ça ne charge rien ^^

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Points : 1 710
    Points
    1 710
    Par défaut
    Je viens de réaliser ce que tu veux faire
    En fait tu souhaiterais faire communiquer Flex et PHP c'est bien ça ? Car au début je ne me concentrai que sur ton problème XML.
    Voici un exemple très simple pour débuter le développement PHP/Flex :
    http://www.adobe.com/devnet/flex/art...tarted_05.html
    C'est un exemple qui devrait répondre à tes besoins car la page php une fois appelée fournit des données XML à ton application Flex.
    A ma connaissance, l'objet XML ne possède pas de propriétés source. Tu devrais utiliser l'objet HTTPService pour appeler ton code PHP et récupérer ton fichier XML dans ta fonction result.

    Bon courage

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut
    Euh en fait c'est plus compliqué, je fais une appli qui tournera en local sans adobe air, je ne peux pas charger les fichiers xml.
    J'ai donc installé apache et je charge les xml via le serveur qui est dans la même machine que l'appli, j'ai donc besoin de détecter l'IP locale pour ne pas avoir à modifier mon code pour chaque ordi.
    C'est possible si je peux mettre une variable à la place de "http...." dans mon mx:XML

  9. #9
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Points : 1 710
    Points
    1 710
    Par défaut
    Oui c'est possible : si tu utilises HTTPService et pas XML : http://blog.flexexamples.com/2007/09...vice-mxml-tag/

    Mais si ton application est toujours en local tu utilises localhost ça marchera toujours. Et dans ce cas inutile de configurer ton adresse IP ...

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 77
    Points : 41
    Points
    41
    Par défaut
    Ok, tout fonctionne quand je lance l'appli dans le Flex Builder, sauf que je peux pas l'exporter parce qu'à chaque ligne où j'appelle un élément de mon fichier xml il me dit propriété non définie XD

Discussions similaires

  1. variables en URL ?
    Par sabbish dans le forum Web
    Réponses: 5
    Dernier message: 24/10/2005, 18h04
  2. [FLASH MX] Variable dans URL
    Par assouline dans le forum Flash
    Réponses: 1
    Dernier message: 07/09/2005, 02h05
  3. [FLASH MX2004] Recuperation variable dans URL
    Par Bibicmoi dans le forum Flash
    Réponses: 11
    Dernier message: 20/08/2005, 14h05
  4. [ActionScript] Récupérer variable dans URL
    Par JohnBlatt dans le forum Flash
    Réponses: 2
    Dernier message: 20/07/2005, 10h21
  5. Variable et url
    Par licorne dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 03/12/2004, 08h51

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