Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flex
Flex Forum d'entraide sur la programmation Adobe Flex : applications Internet riches (RIA)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/01/2011, 16h12   #1
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
Par défaut Variable php

Bonjour,

Je sollicite votre aide pour récupérer des variables contenus dans une fichier php depuis flex. Je vous présente mon fichier php est du genre :
Code :
1
2
3
4
<?php
$var1="var1";
$var2="var2";
?>
Donc voila depuis flex j'ai une fonction en as3 qui utilise URLloader en écoutant ce que retourne le fichier php. Mon problème est ici j'arrive à récupéré mes variables si je met un echo devant par exemple:
Code :
1
2
3
4
5
 
<?php
echo "var1";
echo "var2";
?>
J'arrive à les afficher dans un alert, mais mon alert affiche les données les unes derrières les autres par exemple mon alert m'affichera var1var2, moi je voudrais depuis flex récupérer et stocker les variables distinctement, est-ce possible? Je pense que oui mais je ne trouve pas sur le web des exemples pour récupérer plusieurs variables php depuis flex. Ou je créer un tableau avec mes variables depuis php mais c'est pareil comment le récupérer depuis flash?

Voila mon code as3:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
			protected function button2_clickHandler(event:MouseEvent):void
			{
				var echanges:URLLoader;
				echanges = new URLLoader();
				echanges.addEventListener( Event.COMPLETE, retourmail );				
				var requete:URLRequest = new URLRequest
					("http://localhost/MyPMEAssistant/testvar.php");
				echanges.load ( requete );
			}
 
 
			public function retourmail ( pEvt:Event ):void
			{
				var retourmail:String;
				retourmail = pEvt.target.data;
				Alert.show(retourmail, "Etat2");
 
			}
Merci
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 19h59   #2
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
bonjour,

pourquoi ne retournes tu pas un tableau de valeurs depuis php ?
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 21h23   #3
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
Oui c'est ce que je fais mais quand je récupère mon tableau depuis flex, et que j'affiche le résultat de la fonction retour, toute mes données sont affichées les unes derrière les autres, j'aimerais récupérer tous les éléments du tableau et ensuite pouvoir les afficher à ma guise par exemple pouvoir afficher l'élément 5 de mon tableau, et ça je n'y arrive pas

Merci
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 21h28   #4
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Il faut que tu récupères le retour de ta fonction (resultEvent ?) sous forme de tableau par exemple :

Code :
1
2
3
4
5
 
protected function uneFonction_resultHandler(event:ResultEvent):void
{
    var retour:Array = event.result as Array;
}
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 21h44   #5
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
Ok là je ne comprend pas je place ça où ?
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
protected function button2_clickHandler(event:MouseEvent):void
            {
 
                var echanges:URLLoader;
                echanges = new URLLoader();
                echanges.addEventListener( Event.COMPLETE, retourmail );                
                var requete:URLRequest = new URLRequest
                    ("http://localhost/MyPMEAssistant/testvar.php");
                echanges.load ( requete ); 
 
            }
 
 
            public function retourmail ( pEvt:Event ):void
            {
                var retour:Array = event.result as Array;
 
 
                Alert.show(retour, "Etat2");
 
            }
Voilà mon code lorsque je clique sur le bouton je veux récupérer mon tableau qui est généré en php. La ligne que tu m'as dit je pense qu'il faut la mettre dans la fonction retourmail c'est ça ? Parce que c'est là que je récupère les données envoyées par le fichier php c'est ça? Je suis un peu perdu
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 21h51   #6
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Teste ceci (sans oublier d'importer la classe mx.rpc.events.ResultEvent) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
public function retourmail (event:ResultEvent):void
{
	var retour:Array = event.result as Array;
        var cle:String;
 
        for(cle in retour)
        {
             Alert.show("cle : " + cle + " valeur : " + retour[cle]);
        }			
 
}
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 21h58   #7
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
J'ai fait comme tu m'as dit j'ai bien importé la classe en faisant

import mx.rpc.events.ResultEvent;

Mais il me signale une erreur sur la ligne:
Code :
var retour:Array = event.result as Array;
Accès à la propriété non définie event.
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 22h00   #8
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
As tu changé pEvt par event dans le squelette de ta fonction ?
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 22h06   #9
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
En effet une boulette de ma part .
Maintenant je n'ai plus d'erreur mais mon alert se s'affiche pas rien ne s'affiche lorsque je clique sur le bouton, serait-ce un problème avec mon fichier php qui doit retourner quelque chose de spéciale par rapport à la variable clé du code as?
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2011, 22h11   #10
Membre Expert
 
Avatar de Madfrix
 
Inscription : juin 2007
Messages : 2 278
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : juin 2007
Messages : 2 278
Points : 2 324
Points : 2 324
Oups, même pas vu que tu utilisais un URLLoader (que j'utilise jamais).

Ici tu trouveras ton bonheure pour la configuration dans la partie exemple au tout bas
Madfrix est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/01/2011, 22h37   #11
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 60
Points : 12
Points : 12
Merci c'est super ça fonctionne tu es un champion
xclue est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h52.


 
 
 
 
Partenaires

Hébergement Web