IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dynamique Discussion :

[FLASH 8] Variable non définie en dehors de la fonction


Sujet :

Dynamique

  1. #1
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut [FLASH 8] Variable non définie en dehors de la fonction
    [Flash 8 Pro]

    Bonjour à tous,

    J'ai un petit problème..

    Je récupère des données à partir d'un script PHP jusque là cela fonctionne bien mais je vais quand même vous mettre mon script.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    <?php
    // Définir user et mot de passe
    $dbLink = mysql_connect('localhost', 'root', '');
    // Définir le nom de la base exemple "mabase_db"
    mysql_select_db("flash", $dbLink);
    // Définir la requête exemple table "pays" et champ "langue"
    $Query = "SELECT * FROM cave";
    // Résultat dans "$dbResult"
    $dbResult = mysql_query($Query, $dbLink);
    // Boucle pour remplir un tableau "$mon_tableau" avec le résultat de la requête
    while ($rows = mysql_fetch_array($dbResult)){
    $mon_Tableau[]=$rows['etat'];
    $mon_Tableau[]=$rows['nom'];
    $mon_Tableau[]=$rows['couleur'];
    $mon_Tableau[]=$rows['cepage'];
    $mon_Tableau[]=$rows['vendange'];
    $mon_Tableau[]=$rows['vinification'];
    $mon_Tableau[]=$rows['mise_bouteille'];
    $mon_Tableau[]=$rows['potentiel_garde'];
    $mon_Tableau[]=$rows['temperature_service'];
    $mon_Tableau[]=$rows['accords'];
    $mon_Tableau[]=$rows['descriptif'];
     
    }
    // Utilisation de la fonction "implode" pour faire du tableau une chaîne avec séparateur
    // dans notre cas une virgule "," que l'on récupèrera dans flash avec la fonction split
    $data = implode($mon_Tableau, ",");
    // varflash nom de la variable qui sera utilisée dans flash
    echo("varflash=$data");
    ?>
    Je vais aussi mettre la fonction et les variables dont je me sert pour récupérer les différentes variables de ma base de données.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    System.useCodepage = true;
    var externalData:LoadVars = new LoadVars();
    externalData.onLoad = function() {
         var mon_Tableau:Array = externalData.varflash.split(",");
    };
    externalData.load("tuto-php-mysql-flash.php", "0", "POST");
    Le problème c'est qu'une fois en dehors de cette fonction je n'est plus acces à ma viariable mon_Tableau. Celui-ci me permet de récupérer les différents champs envoyé du script PHP.

    Je pense que la variable est locale à la fonction mais je voudrais bien pouvoir avoir acces à mon tableau ailleurs que dans celle-ci.

    Si vous avez des idées ...

    Merci

  2. #2
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Points : 1 186
    Points
    1 186
    Par défaut
    salut,

    Tu a raison , " la variable est locale à la fonction"
    je pense que si tu ecrit quelques chose dans ce gout là, ca devrai marcher .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var mon_Tableau:Array=new Array();
    System.useCodepage = true;
    var externalData:LoadVars = new LoadVars();
    externalData.onLoad = function() {
         mon_Tableau = externalData.varflash.split(",");
    };
    externalData.load("tuto-php-mysql-flash.php", "0", "POST");

  3. #3
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Désolé mais j'ai deja essayé et ca ne fonctionne pas mais merci quand même.....

    Si t'as une autre idée... je suis preneur.....

  4. #4
    Rédacteur

    Avatar de arnolem
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 856
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 856
    Points : 6 114
    Points
    6 114
    Par défaut
    Tu peux définir un objet en Global, de cette manière :
    si ça peux t'aider.

  5. #5
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    ca fonctionne aussi avec les tableaux???????

  6. #6
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Non le passage de varibale global ne fonctionne pas non plus....

    Là je bloque je n'ai vraiment plus d'idée....

  7. #7
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Salut,

    où, quand et comment tu accèdes à ton tableau une fois qu'il a été remplit ?

    La solution de CR_Gio devrait marcher.
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  8. #8
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Citation Envoyé par freegreg
    Salut,

    où, quand et comment tu accèdes à ton tableau une fois qu'il a été remplit ?

    La solution de CR_Gio devrait marcher.
    Pour ce qui est de l'acces a mon tableau je m'en sers dans une autre fonction le problème vient peut être de la....

    Il va me servir à la création d'un tableau de bouton en fonction de certaines variables stockées dans la base de données.

    Mais dans ce cas je ne sais pas comment pouvoir y acceder.

    S'il existe une autre méthode.....

  9. #9
    Expert éminent

    Avatar de freegreg
    Profil pro
    Inscrit en
    Août 2002
    Messages
    4 376
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2002
    Messages : 4 376
    Points : 8 779
    Points
    8 779
    Par défaut
    Il faudrait par des trace que tu vérifies que ta fonction qui va lire ton tableau ne s'exécute pas avant que celui-ci soit rempli !
    Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
    Offres d'emploi développeur Web

  10. #10
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    le problème est qu'avec les traces je ne pourrais pas le voir quand je vais le publier. Comme je l'ai noter le tableau se rempli a partir des données qui sont stockées dans la base de données.

    Apres test même en dehors de toutes fonction la variable apparait comme undefine...

    Comme faire pour donner un ordre de chargement....

    Car lors de l'appel de ma fonction avec le OnLoad c'est au chargement mais les autres je ne sais pas trop quand elles sont chargées....

  11. #11
    Membre chevronné
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Points : 2 228
    Points
    2 228
    Par défaut
    Citation Envoyé par Malau
    le problème est qu'avec les traces je ne pourrais pas le voir quand je vais le publier. Comme je l'ai noter le tableau se rempli a partir des données qui sont stockées dans la base de données.
    Dans ce cas fais le avec une zone de texte, ou tu ajoute la nouvelle info a afficher. Tout est concatene donc tu vois l'ordre de remplissage.

    En esperant t'aider.
    J'aime les gâteaux.

  12. #12
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Citation Envoyé par Demco
    Dans ce cas fais le avec une zone de texte, ou tu ajoute la nouvelle info a afficher. Tout est concatene donc tu vois l'ordre de remplissage.

    En esperant t'aider.
    Merci donc pour les zones de texte je m'en sert depuis que je me suis appercu que la varibale n'etait pas définie en dehors.

    Maintenant je cherche a charger mes fonctions après l'appel de la fonction qui remplie mon tableau...

  13. #13
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Bon voila apres avoir cherché un peu plus et pour être sur que ma variable tableau soit bien définie en premiere et non définie apres j'ai decidé de mettre mon code sur 2 images.

    La première prend mon code ou je charge les données de ma base. donc avec le code que CR_Gio ma gentillement donné.

    Et ensuite j'ai juste rajouté ceci..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    var mon_Tableau:Array = new Array();
    System.useCodepage = true;
    var externalData:LoadVars = new LoadVars();
    externalData.onLoad = function() {
        mon_Tableau = externalData.varflash.split(",");
        gotoAndPlay(2);
    };
    externalData.load("tuto-php-mysql-flash.php", "0", "POST");
    stop();
    Voila donc làje suis sur que cette variable est bien définie et qu'elle est bien chargé avant toutes autres fonctions.

    Je vous remercie donc tous pour votre aide...

    Bien sur je pense que j'aurais d'autres questions par la suite...

    Je remerci les modos qui font un super travail...

    Bon Courage....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Mail] variable non définie
    Par loopback dans le forum Langage
    Réponses: 2
    Dernier message: 12/11/2007, 11h18
  2. Variable non définie
    Par philippef dans le forum Langage
    Réponses: 1
    Dernier message: 12/09/2007, 14h34
  3. Réponses: 5
    Dernier message: 28/08/2007, 11h42
  4. [SQL] Problème de variable non définies
    Par micka39 dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 01/05/2007, 23h10
  5. Problème de variable non définie
    Par Mimi Bulles dans le forum Langage
    Réponses: 2
    Dernier message: 07/05/2006, 09h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo