références, utilisation de sendAndLoad dans un constructeur

références, utilisation de sendAndLoad dans un constructeur - Flash/ActionScript - Programmation

Marsh Posté le 13-01-2005 à 19:38:58    

Bonjour,  
j'ai un petit soucis que j'ai du mal à résoudre...
J'ai une table sql avec 2 champs : id et pseudo par exemple; un script php qui pour une id donnée, va chercher le pseudo correspondant dans la table et retourne une chaîne au format attendu par sendAndLoad (&pseudo=raymond& ).
 
J'ai une classe "personne" en AS2 du genre :
 
class personne{
var id:Number;
var pseudo:String;
 
[...]
des méthodes, etc...
}
 
J'ai un problème dans le constructeur : je voudrais que celui-ci prenne "id" comme paramètre, et mette simplement le pseudo correspondant dans la propriété pseudo de ma classe.
 
J'ai écrit quelque chose dans ce genre :
 
function personne(id:Number)
{
   var lv:LoadVars = new LoadVars();
   
   this.id = id;
   lv.id = id;
 
   lv.sendAndLoad("monscript.php", lv, "POST" );
   lv.onLoad = function(){
 
    Ce que je veux récupérer est this["pseudo"], mais comment faire référence à l'objet que mon constructeur est en train de créer pour y stocker this["pseudo"]?
    [edit : trace(this["pseudo"]) à cet endroit là me donne bien ce que j'attends : raymond (pour rester dans mon exemple)]
   }      
}
 
J'ai bien essayé une dizaine de trucs différents mais ne suis arrivé à rien...
 
 
Merci d'avance et désolé pour l'explication confuse...
 
Milou.


Message édité par milou77 le 13-01-2005 à 20:04:02
Reply

Marsh Posté le 13-01-2005 à 19:38:58   

Reply

Marsh Posté le 14-01-2005 à 12:06:20    


En continuant à batailler sur ce problème, je suis arrivé à le résoudre partiellement.
 
function Personne(id:Number)
{
   var objLv:LoadVars = new LoadVars();
   var newObj:Personne = this;
       
   this.id = id;
       
   objLv.id = id;
   objLv.onLoad = function(success:Boolean){
      if(success)    
         newObj.pseudo = this["pseudo"];
      else
         trace("pas glop" );
   };
   objLv.sendAndLoad("http://localhost/monScript.php", objLv, "POST" );
}
 
 
 
Le problème c'est que j'appelle ce constructeur depuis un document flash de la façon suivante:
 
var pers:Personne = new Personne(1);
 
Et que je veux afficher la valeur du champ pseudo de cet objet dans un TextField. Je procède de la manière suivante :
 
midLeft_txt.text = pers.pseudo;
 
Et ce midLeft_txt.text reste undefined.
 
Quelqu'un pourrait m'aider svp?
 
Merci d'avance,
Milou

Reply

Marsh Posté le 14-01-2005 à 13:44:03    

Problème résolu, merci quand même.
 
Milou

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed