begin process at 2012 05 27 21:36:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

Variables créées dans une boucle


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

Variables créées dans une boucle

mercredi 14 mars 2007 à 22:46:02 | Variables créées dans une boucle

jacky quartz

Membre Club
Bonsoir à tous.
J'ai un souci avec des variables.
Sans rentrer dans les détails (pour commencer), je suis en train de faire un panier d'achat.

_level10:

J'ai des 3 variables _global qui sont "modifiées" par chacun de mes swf (_global.nom_prod, _global.taille et _global.gender)
Ces 3 vars prennent les valeurs suivant le swf (bouton > acheter cet article) et j'incrémente une autre globale, qui est mon nombre total d'article, appellée _global.nbre_commande.

_level11 :

J'ai mon panier, qui vient quand on clique pour le faire venir (à partir du _root)
Dedans, j'ai créé et dupliqué un mc, nommé com, en fonction de  _global.nbre_commande
[code]
for (var i=1; i < _global.nbre_commande+1; i++) {
        theText.com.duplicateMovieClip("com"+i,i);
       theText["com"+i]._y = theText["com"+(i-1)]._y + 25;
    //trace (panier_cont.theText["com_"+i]._y);
        theText["com"+i].modele.text = _global.nom_prod;
        theText["com"+i].gender.text = _global.gender;
        theText["com"+i].taille.text = _global.taille;
}
[/code]
Je clique sur mes boutons acheter (swf différents appellés) ça s'incrémente bien, j'ai donc plusieurs movie com dans mon tableau,
com1, com2, etc... (le com tout court je l'ai envoyé en _visible false, car je ne l'ai pas crée en AS, mais graphiquement, je pense pas qu'il y ait de souci)
Donc, ça commence par com1.

Dans mon mc com (générique, servant de modéle aux autres) :
J'ai des champs dyn : modele, taille, gender, qte, prix

En fait, j'aimerai pouvoir créer des var "à  la volée", de la même façon que je le fais pour les mc com,
[code]
theText.com.duplicateMovieClip("com"+i,i);
[/code]
mais avec mes vars global...
Peut-on crée des variables, avec une même base, mais en ajoutant un index (le numéro de la commande qui s'incrémente, _global.nbre_commande) ??

Aussi bien que com1, com2, ["com"+i] etc...
Je voudrais faire, var com1, var com2, etc...[var com +i] qui contiendrait chacune, mes 3 vars globales, _global.nom_prod, _global.taille et _global.gender

Merci beaucoup pour le temps que vous prendrez à essayer de m'aider

jeudi 15 mars 2007 à 07:42:46 | Re : Variables créées dans une boucle

Girou

Membre Club
Réponse acceptée !
Bonjour,

tu sais difficilement créer des variables à la volée, par contre, si tu utilises un tableau (Array), ton probleme sera résolu.

_global.CommandesVars=new Array()

ensuite, lorsque tu ajoutes un produit au panier, tu crées un nouvel objet
obj = {produit:_global.nom_prod, taille:_global.taille, genre: _global.gender}

et tu places cet objet dans ton tableau
_global.CommandesVars[_global.nbre_commande]=obj

ensuite, pour accder à tes informations, prenons comme exemple la commande 1
 pour connaître le nom du produit tu fais
_global.CommandesVars[1].produit

@+

signature not found
jeudi 15 mars 2007 à 09:59:20 | Re : Variables créées dans une boucle

jacky quartz

Membre Club
Ok Girou.
Et merci pour ta réponse.
J'avais bien la sensation que ça tournait autour d'un Array, mais moi et la syntaxe...
Y'aurai aussi les Shared Object apparemment, mais la taille de stockage est fonction de l'internaute, du coup...

Je vais checker ça immédiatement et je reviens quoi qu'il en soit en espérant cliquer sur Réponse acceptée ! 
(ou alors je suis trop mauvais...)
jeudi 15 mars 2007 à 10:31:50 | Re : Variables créées dans une boucle

jacky quartz

Membre Club
Zut, juste une chose..
J'imagine que mon tableau _global.CommandesVars=new Array() devrait être crée sur le swf du panier au level 11 (j'ai laissé la frame 1 vide avec un stop. Le panier n'apparait pas, mais je peux y préparer mes commandes)

Le souci c'est que mes boutons vienne de mes swf sur le level 10...

J'ai le droit de placer un objet dans mon tableau
_global.CommandesVars[_global.nbre_commande]=obj

Alors qu'il n'est ni au même level ni dans le même swf ?? (j'avais buté aussi là-dessus dans mes tests)

jeudi 15 mars 2007 à 11:28:00 | Re : Variables créées dans une boucle

jacky quartz

Membre Club

Super !!!!!

Ca fonctionne bien.. Chacune de mes var globales est bien enregistrée dans :

obj = {produit:_global.nom_prod, taille:_global.taille, sexe: _global.gender};


Le souci que j'avais, c'étais qu'à l'appel du panier, je reconstruisais à chaque fois le Array...

Du coup j'avais :
pour i = 1,  une triplette de bons résultats
pour i = 2,  la premiére triplette "undefined" et la seconde bonne
pour i = 3,  la premiére triplette "undefined"  la seconde "undefined" et la troisiéme bonne,
etc...

Cool..

Maintenant le dernier souci, ça va être de pouvoir injecter dans mes différents movies com (com1, com2, etc...) l'objet qui correspond.

Ce qui va représenter (pour les courageux qui ont suivi ce gros mic-mac..) :
 
mc com1
_global.CommandesVars[1].produit);
_global.CommandesVars[1].taille);
_global.CommandesVars[1].sexe);

mc com2
_global.CommandesVars[2].produit);
_global.CommandesVars[2].taille);
_global.CommandesVars[2].sexe);

etc....

Du coup, mes champs de texte dyn seront bien renseignés avec des infos différentes
Il ne me restera plus qu'à les envoyer à Php > BDD

Merci beaucoup Girou, t'es un chef !
jeudi 15 mars 2007 à 11:40:14 | Re : Variables créées dans une boucle

Girou

Membre Club
Content d'avoir pu t'aider !!!

P.S. je suis qu'un sous-chef 

@+

signature not found
jeudi 15 mars 2007 à 11:50:03 | Re : Variables créées dans une boucle

jacky quartz

Membre Club
bon ben tiens...
Une toute derniére question et j'arrête de jouer mon lourdingue...

Pour l'envoi en Post, je vais avoir mes triplettes de var dans chacun de mes mc com (com1, com2...)

Tu me conseilles quoi au niveau du SendAndLoad ?
Je peux boucler à l'intérieur ?

Mon idée serait d'envoyer le _global.nbre_commande en dehors de cette boucle, et que Php boucle à son tour pour extraire à chaque passage de i les 3 infos nécessaires.

Le souci c'est que mes données sont dans un Array.
C'est pas comme si j'envoyais : var_to_php = this["com"+i].nom_prod.text;
Là c'est pour un champ de texte (en plus php recevrait x version de la variable var_to_php, et les ecraserait à chaque fois...

Ca ressemblerait à quoi à peu prés ?

Merci encore pour ta patience...
jeudi 15 mars 2007 à 13:10:39 | Re : Variables créées dans une boucle

Girou

Membre Club
Réponse acceptée !
Re !

dans flash, tu crées une seule chaine de caractère a envoyer à php
- 1 -
rassembler toutes les commandes en une chaine de caractères unique

srtingPourPhp=""

for (i=0;i<_global.CommandesVars.length;i++){
var tmp=
_global.CommandesVars[i].produit+"-!-"
tmp+=_global.CommandesVars[i].taille+"-!-"
tmp+=_global.CommandesVars[i].sexe+"-!!!-"
srtingPourPhp+=tmp
}

ensuite tu envois ta variable à php

-2-
Dans php tu exploses ta variable selon les séparateurs qui ont été placé en actionscript

exploses la variable selon "-!!!-" et tu auras un tableaux dont chaque enregistrement contiendra une commande

exploses la commande selon "-!-" et tu récupères sous php les valeurs de tes variables produit, taille et sexe...

@+

signature not found
jeudi 15 mars 2007 à 13:15:32 | Re : Variables créées dans une boucle

jacky quartz

Membre Club
Moi j'appelle pas ça être un sous-chef....

J'appelle ça être un vieux chibane de l'entraide !!

Et je remercie beaucoup pour ton aide

@+
lundi 19 mars 2007 à 20:59:00 | Re : Variables créées dans une boucle

jacky quartz

Membre Club
Hello...

Je reviens car j'ai un autre souci.
J'ai pas voulu créer un nouveau sujet, car c'est en droite ligne de mon dév.

Je cherche à écrire ça dans une boucle, mais je m'y perd un peu..

if (_global.nbre_commande == 1) { panier_cont.total_com = _global.CommandesVars[1].tarif; }
if (_global.nbre_commande == 2) { panier_cont.total_com = _global.CommandesVars[1].tarif + _global.CommandesVars[2].tarif; }
if (_global.nbre_commande == 3) { panier_cont.total_com = _global.CommandesVars[1].tarif + _global.CommandesVars[2].tarif + _global.CommandesVars[3].tarif; }
 etc...

Je pense que la soluce c'est une boucle dans une boucle, dans ce genre :

for (i=0; i < _global.nbre_commande+1; i++) {
    s = _global.CommandesVars[i].tarif;
    t = i + 1;
    u = s + t;
    for (j=1; j < _global.nbre_commande+1;
    if (_global.nbre_commande == i) { 
    panier_cont.total_com = s + s[t];
    }
}

Mais ce que je viens d'écrire est faux de toute façon par rapport à ce que j'aimerai mettre en place..
Merci pour le coup de main providentiel.
J'ai vraiment du mal avec la syntaxe..




1 2

Cette discussion est classée dans : taille, variables, var, global, thetext


Répondre à ce message

Sujets en rapport avec ce message

Variables et actionscript [ par rudynou ] Bonjour,Je débute actionscript et g du mal a cerner le fonctionnement des variables !G compris qu'il y avait 3 types de déclaration :Global ( avec _gl Var == Var ? [ par Bryce007 ] Bonjour,mon code : stop();_global.Txt_sam_01 = 'Bonjour VV'_global.Txt_sam_01 = _global.CTXT01TXT01.text= CTXT01CTXT01 est pourtant "Undefined" pourqu variables dynamiques: creation de 800 variables. [ par aze555666 ] sltvoila mon pb: je veux afficher 400 points: point0 à point 399, ayant pour coordonnées a0 à a399 et b0 à b399.j'utilise une boucle for pour m diapo pour debutant [ par billy67000 ] Salut, je suis débutant en Flash et je souhaite réaliser une diapo. J'ai trouver un script dont j'ai modifié le code ça marche pas pourqoui? voici AIde pour les variables globales [ par legrandjeremy ] Bonjour à tous,Après avoir passé plus de 2 heures à chercher ici et là sur internet je n'arrive pas à répondre à ma question :Comment mettre une varia Problèmes de visibilité de variables [ par Kerlon ] Voici mon code :this.onMouseDown = function () {var a = _root._xmouse;<font color="#00 probleme de saturation avec loavars [ par lechti62 ] Bonjour à tous.Voila jedosi scanner en permanence ma base SQL car des infos y sont mses à jour en temps réel.Donc dans un clipje recuperer mes variabl Problème de modification de texte d'un objet dynamique attachMovie [ par keyser69 ] Bonjour,Je voudrais de dupliquer un movieclip cliquable présent dans ma librairie et en modifier son contenu à chaque fois sur base d'un tableau que j Limite de page trop courte [ par karolyn74 ] BonjourJ'ai un soucis qui je pense est minime mais je n'arrive pas à trouver quel chiffre et où il faut le modifiez et si il faut mettre plus grand ou drawingApi [ par Ariranha ] Bonjour à tous, J'ai repris un sample de adobe (drawingApi), dans lequel j'ai supprimé les parties qui ne m'intéressées pas ayant seulement besoin de


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,546 sec (3)

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