begin process at 2010 03 21 01:02:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

transfert d'object entre php et flash via amfphp


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

transfert d'object entre php et flash via amfphp

mardi 21 avril 2009 à 10:26:28 | transfert d'object entre php et flash via amfphp

szambaux

Bonjour, j'utilise amfphp pour mes communication entre flash et php, j'aimerais optimiser un peu. J'ai une classe User en php,
[code]
class User
{

    public $Id;
    public $nom;
    public $prenom;
    public $option;
    public $groupe;
    public $email;
    public $photo;
    public $telephone;
    public $gsm;
    public $contact;
    public $etat;
    private $mysql;
    public function User()
    {
   
    }
   
     public function __set($property,$value)
    {
       
    }
    public function toString()
    {
        return "[User->Id=".$this->Id." nom=".$this->nom." prenom=".$this->prenom." option=".$this->option." email=".$this->email." photo=".$this->photo." contact=".$this->contact." etat=".$this->etat."]";
    }
}
[/code]


 quand je me log je me créer un User en php en variable de session et je le transfert à flash

[code]
$mySession->myUser=$myUser;
 return $myUser;

[/code]


dans mon flash j'ai une classe user

[code]

// nouvelle définition de ma classe User:
package vnd.utilisateur {

import vnd.web.utilisateur.ListeContact;
import vnd.utilisateur.Contact;
import flash.events.*;
import flash.net.*
import flash.display.*
// definition de ma classe User   
    public class User
    {
        public var nom:String;
        public var prenom:String;
        public var groupe:int;
        public var email:String;
        public var photo:String;
        public var Id:int;
        public var contact:Array;
        public var etat:String;
        public function User()
        {
            etat="horsLigne";
        }   
               
        //affiche la liste de cotnact
        public function afficheContact()
        {
           
        }
               
        //fonction qui affiche le nom de la personne dans la zone de texte
        public function afficheNom()
        {
            //nom_txt.text=prenom+" "+nom;
        }
       
        //fonction utilisée pour le trace
        public function toString ( ):String
        {
            return "[Utilisateur prenom : " + prenom +", nom : " + nom + ", groupe : " + groupe + ", email : " + email + ", photo : " + photo +", etat : "+etat+" ]";
        }
    }
}

[/code]


Quand je récupere mes infos via une connexion amfphp avec le code suivant:

[code]
function succes ( pRetour:* ):void 
{
  for ( var p in pRetour ) 
      
  {
        
    trace( p, " : " + pRetour[p] );
        
  }

  
}
[/code]


J'obtiens ceci:

prenom : dupont
etat : null
contact : null
Id : 1
nom : toto
gsm : 06842245224
option : null
telephone : 0325656468
photo : null
email : toto@.fr
groupe : null


et j'aimerais que cela m'instancie directement un user via ma classe user en as3







mardi 21 avril 2009 à 10:44:16 | Re : transfert d'object entre php et flash via amfphp

Orange73

Membre Club
Hello,

tout d'abord, il faudrait deja passer des parametre a ton constructeur de ta classe as3, exemple :

public function User(pNom,pPrenom....)  //etc...
        {
           nom = pNom;
           prenom = pPrenom;
            etat="horsLigne";
        }  


Ensuite,

function succes ( pRetour:* ):void 
{   
    var newUser:User = new User(
pRetour[0],pRetour[1];
}

Un truc dans ce genre je penses.. mais j'ai pas testé.


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
mardi 21 avril 2009 à 10:44:45 | Re : transfert d'object entre php et flash via amfphp

Orange73

Membre Club
Correction :

var newUser:User = new User( pRetour[0],pRetour[1]);


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
mardi 21 avril 2009 à 10:52:08 | Re : transfert d'object entre php et flash via amfphp

szambaux

Merci pour votre réponse rapide, je connaissais cette technique mais j'aurais aimé faire du class mapping, genre  monObjet flash = monObject php
mardi 21 avril 2009 à 10:56:42 | Re : transfert d'object entre php et flash via amfphp

szambaux

actuellement je fais comme cela:

var myUser:User=new User();
  for ( var p in pRetour ) 
      
  {
     myUser[p]=pRetour[p];
     
        
  }
mardi 21 avril 2009 à 16:52:12 | Re : transfert d'object entre php et flash via amfphp

Girou

Membre Club
Bonjour,

ta solution fonctionne... mais n'est pas très sécurisante (tout est en variable public dans ta class User)
la solution de Orange73 me semble une meilleure approche (var newUser:User = new User( pRetour[0],pRetour[1]);) -> voir transmettte en une fois les données var newUser:User = new User( pRetour)
au constructeur de User les infos nécessaires et les traiter dans la fonction constructeur est plus sécurisant.

Maintenant, si l'ordre et le nombre des données reçues de amfphp risque de changer, tu as pris la solution la plus optimale.

@+

signature not found
mardi 21 avril 2009 à 17:20:56 | Re : transfert d'object entre php et flash via amfphp

szambaux

Merci pour votre éclaircissement, pour faire un compromis entre les deux méthodes, je pourrais passer mes variable en private et faire des fonction set pour mes variables,non?
mardi 21 avril 2009 à 17:27:16 | Re : transfert d'object entre php et flash via amfphp

Orange73

Membre Club
Tu peux aussi, mais cela revient a ma méthode... en un peu plus de code...

Autant passer toutes les infos en prametres lors de l'instanciation de la classe


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
mardi 21 avril 2009 à 19:54:18 | Re : transfert d'object entre php et flash via amfphp

Girou

Membre Club

ben wi...
sauf si, comme je le disais "l'ordre et le nombre des données reçues de amfphp risque de changer" alors l'idée des getter/setter sera un bon compromis


@+

signature not found


Cette discussion est classée dans : public, code, flash, var, user


Répondre à ce message

Sujets en rapport avec ce message

Récupérer une variable ? [ par Toxicat ] Bonjour à tous, J'ai actuellement une animation flash toute basique. Un rectangle blanc, une zone de texte dynamique. Elle va bien sur s'étoffer avec SWFObject et insertion entete [ par sebiv ] Bonjour à tous ! Un truc, peut etre tout bête, mais je connais pas l'astuce... j'insere un flash avec SWFObject dans ma page web... JE voudrais jus Accéder a l'instance d'une classe [ par Orange73 ] Hello, J'ai ce code : [code=as] var nbItems:Number = 3; var clip:CustomClip; for(var i=0 ; i<nbItems ; i++) { clip = new CustomClip(this["btn"+i] AcrionScript 3 Lecture d'un fichier XML [ par nuns ] Bonjour, J'essaie de faire une classe pour charger un fichier xml, qui comporte juste le chemin des images sur le serveur. La lecture ce fait correc Besoin urgent pour code flash [ par klssi ] Voila, jai un gros problème j'ai toute les images mais connait rien en code flash donc voila si possible en action script 2.0 je connais que celui la. Recupération avant-derniere valeur Array as3 [ par Ariranha ] Bonjour, Je travaille actuellement sur un petit bout de code qui me permet de stocker dans plusieurs Array les mouvements de la souris. J'aurais aim ajouter lien animation AS3 (flash CS3) [ par ju0123456789 ] Bonjour, je suis en trainde créer une animation flash en AS3, je suis débutant et je ne connais pas trop. en dernier calque j'ai ajouté un cadre ave Redimensionné images charger a partir d'un XML [ par ArC3Nik ] Bonjour Voila je souhaite afficher sur un site les dernière meilleur vente dans un flash. Les information sont stocké dans un fichier xml. Je commen Recherche code preload pour Flash 9 - fonctionnant sur explorer 6 et 7 et Mozilla [ par MOMMENS ] Bonjour, Je suis débutant et je souhaiterais savoir si quelqu'un pourrait me fournir un code de préload pour flash 9 fonctionnant sur Internet explore introduire mon introduction flash dans une page HTML [ par fulltrip ] Voilà, je comprends pas très bien que mon introduction en flash me redirige vers une fenêtre pop up qui en plus de cela me bloque l'accès à ma page d'


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales