[Résolu] Utilisation SharedObject

Utilisation SharedObject [Résolu] - Flash/ActionScript - Programmation

Marsh Posté le 11-05-2006 à 13:59:13    

Voilà, je dois sauvergarder des données dans un fichier en local, je le fais donc grace à share object.
Mais il y a apparement un soucis.
 
J'ai 6 plaquettes, quand je passe à la suivant c'est à ce moment que j'enregistre mes données :
 
 

Citation :

Code :
on(press){
gotoAndStop(4);
 
//record information in the cookie
 myCookie = SharedObject.getLocal("UserResult" );
 myCookie.data.P1Picture1 = Pic1;  
 myCookie.data.P1Picture2 = Pic2;  
 myCookie.data.P1Picture3 = Pic3;  
 myCookie.data.P1Picture4 = Pic4;  
 myCookie.data.P1Picture5 = Pic5;  
 myCookie.data.P1Picture6 = Pic6;  
 // save information about answer
 myCookie.data.TrueResponse = TrueResponse;
 // save information
 myCookie.flush();
 delete myCookie;
       
        Trace("P1PIC1"+myCookie.data.P1Picture1.Timer+"response"+myCookie.data.P1Picture1.Response+"nomSound"+myCookie.data.P1Picture1.mysound);
 


 
Ma Trace me retourn des resultats correct, execepter pour le temps ; undefined.
 
Pic1 est un object declarer de la sorte :
 

Citation :


Pic1=new Object()
Pic1.Timer=0;
Pic1.Response="false";
...


 
Pour lancer et recuprer les valeurs de mon timer je procède de la sorte :
 

Citation :


EntermyPicture = getTimer(); //lorsque je rentre sur l'image
....
ExitmyPicture = getTimer();//lorsque je sors de mon image, ou que je clique
Pic1.Timer = Pic1.Timer + (ExitmyPicture-EntermyPicture)//Pour recupere le final


 
LE problème quand je passe sur ma deuxieme plaquette, juste aprés l'enregistrement dans le cookie que j'effectue exactement de la meme maniere en remplacement juste les nom P1Picture1 par P2Picture 2 etc.
J'affiche la meme trace que precedement ainsi qu'une seconde pour voir cez qui se trouve dans P2Picture1.
Et là c'est le drame, dans la trace du 1 je ne trouve plus mes valeurs, il les a remplacé par celle du 2, il m'affiche et un temps alors qu'il ne l'affichait pas auparavant. Dans la trace du 2 c'est du grand n'importe quoi, il affiche le meme temps, la réponse, mais les deux autres attributs qui suivent.
 
J'ai oublié de preciser que j'initialise mes variables global dans la couche "Action" quand j'arrive sur la frame  
avec
 

Citation :


//INITILISATION OF ALL THE DATA FOR THIS TEMPLATE
//Initialise time for data concerning each picture
Pic1.Timer = 0;
Pic2.Timer = 0;
Pic3.Timer = 0;
Pic4.Timer = 0;
Pic5.Timer = 0;
Pic6.Timer = 0;
// record the degfault reponse for each picture
Pic1.Response = "false";
Pic2.Response = "false";
Pic3.Response = "false";
Pic4.Response = "true";
Pic5.Response = "true";
Pic6.Response = "false";
// Name of the sound play on each picture
Pic1.mysound = "P1Sound1.mp3";
Pic2.mysound = "P1Sound2.mp3";
Pic3.mysound = "P1Sound3.mp3";
Pic4.mysound = "P1Sound4.mp3";
Pic5.mysound = "P1Sound5.mp3";
Pic6.mysound = "P1Sound6.wav";
// picture
Pic1.NamePic = "P1Picture1.jpg";
Pic2.NamePic = "P1Picture2.jpg";
Pic3.NamePic = "P1Picture3.jpg";
Pic4.NamePic = "P1Picture4.jpg";
Pic5.NamePic = "P1Picture5.jpg";
Pic6.NamePic = "P1Picture6.jpg";


 
Voilà si quelqu'un voit une érreur monumental, pouvez me le signalez, je n'ai jamais appris, flash, c'est un appli à rendre pour demain, j'y comrpend vraiment rien. J'ai regarder des tutaux sur internet j'ai essayé de faire comme ont dit, mais avec les 10000 endroits où l'on peut mettre du code j'avoue que c'est difficile de comprendre le fonctgionnement de cette grosse usine.
merci pour l'aide
 
et voici de que je trouve dans mon fichier .SOL :
 
dans mon fichier sol je trouve mes variable
P1Picture1
P1Picture2 mais avec les valeurs de ma planche 6
et tous les autres variable
P2Picture1
....
P3Picture1
....  
etc jusqu'a 6 sont vides?!!
 
à l'aide! je dois faire untruc de travers, mais je comrpend pas où?!


Message édité par lordankou le 11-05-2006 à 15:03:26
Reply

Marsh Posté le 11-05-2006 à 13:59:13   

Reply

Sujets relatifs:

Leave a Replay

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