cs_sangho
Messages postés57Date d'inscriptiondimanche 29 décembre 2002StatutMembreDernière intervention27 mai 2008 17 oct. 2006 à 18:38
Merci... mais j'ai d'autre probleme apparament :
Fichier table_membre.as
class table_membre {
var nom:String;
var prenom:String;
var mail:String;
var telephone:String;
var entreprise:String;
function table_membre()
{
nom = "";
prenom = "";
mail = "";
telephone = "";
entreprise = "";
}
function initVARIABLE(code:Number)
{
// CHARGEMENT DES DONNEES
var loadvars = new LoadVars();
loadvars.Tcode = code;
loadvars.sendAndLoad("membre/info.php",loadvars,"POST");
loadvars.onLoad = function()
{
nom = loadvars.Tnom;
prenom = loadvars.Tprenom;
mail = loadvars.Tmail;
telephone = loadvars.Ttelephone;
entreprise = loadvars.Tentreprise;
}
}
}
Fichier fla :
var monMembre:table_membre = new table_membre();
monMembre.initVARIABLE(1);
testtt = monMembre.get_champ(1);
Fichier php :
function envoi_Variable_au_swf($variable,$valeur)
{
echo "&$variable=$valeur";
}
if(isset($HTTP_POST_VARS['Tcode'])) {
require_once('../bd.inc.php');
$code = $HTTP_POST_VARS['Tcode'];
$res = mysql_fetch_array(mysql_query("
SELECT *
FROM serv_membre
WHERE mem_id = '".$code."'
"));
shubenka
Messages postés759Date d'inscriptionmercredi 11 décembre 2002StatutMembreDernière intervention12 novembre 2008 17 oct. 2006 à 19:56
get_champ(1); ? ca sort d'ou
et il faut que tu attende le chargement des variables avant de les utiliser
monMembre.initVARIABLE(1);
testtt = monMembre.get_champ(1); //ici c'est pas dit que le chargement soit fini
<hr />http://www.carton.c.la
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 20092 18 oct. 2006 à 08:55
Bonjour,
tu as un probleme de ciblage avec ton loadvars, les variables nom, prenom,... sont définies dans la fonction onLoad de loadvars
Va voir du coté de la fonction Delegate pour contourner ce problème de ciblage
import mx.utils.Delegate
class table_membre {
// definition des variables
var nom:String;
var prenom:String;
var mail:String;
var telephone:String;
var entreprise:String;
var loadvars :LoadVars
// constructeur avec affectation direct du numéro de membre
function table_membre(_code:Number)
{
nom = "";
prenom = "";
mail = "";
telephone = "";
entreprise = "";
loadvars = new LoadVars();
loadvars.onLoad = Delegate.create(this.loadingComplete);
loadvars.Tcode = _code;
loadvars.sendAndLoad("membre/info.php",loadvars,"POST");
}
function loadingComplete()
{
nom = loadvars.Tnom;
prenom = loadvars.Tprenom;
mail = loadvars.Tmail;
telephone = loadvars.Ttelephone;
entreprise = loadvars.Tentreprise;
}
}
le fla
var monMembre:table_membre = new table_membre(1); // on affecte directement dans le constructeur ne numéro du membre
testtt = monMembre.get_champ(1);
?? La fonction get_champ() est non implémentée dans la classe !!!
testtt=monMembre.nom devrait te renvoyer le nom du membre (LORSQU'IL A ETE CHARGE) puisque tes variables de classe sont public et non private
cs_sangho
Messages postés57Date d'inscriptiondimanche 29 décembre 2002StatutMembreDernière intervention27 mai 2008 18 oct. 2006 à 22:50
Oui.
désolé, je n'ai pas mis le code en entier.
J'ai essayer cette solution. Les variables ne se chargent toujours pas.
J'ai fait des tests sur le code php, il marche.
voici mon code :
.fla :
var monMembre:table_membre = new table_membre(1);
gg = monMembre.get_champs();
table_membre.as :
import mx.utils.Delegate
class table_membre {
// definition des variables
var nom:String;
var prenom:String;
var mail:String;
var telephone:String;
var entreprise:String;
var loadvars :LoadVars
// constructeur avec affectation direct du numéro de membre
function table_membre(_code:Number)
{
nom = "";
prenom = "";
mail = "";
telephone = "";
entreprise = "";
loadvars = new LoadVars();
loadvars.onLoad = Delegate.create(this.loadingComplete);
loadvars.Tcode = _code;
loadvars.sendAndLoad("membre/info.php",loadvars,"POST");
}
function loadingComplete()
{
nom = loadvars.Tnom;
prenom = loadvars.Tprenom;
mail = loadvars.Tmail;
telephone = loadvars.Ttelephone;
entreprise = loadvars.Tentreprise;
}
function get_champs()
{
// simplifier
return nom;
}
}