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

Intégration Discussion :

Charger une variable depuis php vers Flash


Sujet :

Intégration

  1. #1
    Membre du Club Avatar de Gizmil
    Profil pro
    Inscrit en
    Août 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2007
    Messages : 163
    Points : 60
    Points
    60
    Par défaut Charger une variable depuis php vers Flash
    Salut à tous,

    je me demandais comment je peux importer dans mon flash le contenu d'une variable déclarée en php !

    Je suis en AS2. J'ignore comment procéder, quelle méthode utiliser entre loadVariables et loadVars... Côté php, dois-je utiliser GET ou POST ou est-ce inutile ?

    Pour la petite histoire, j'ai créé un diaporama d'images et j'aimerais l'utiliser pour plusieurs pages/galeries. Comme il y a un répertoire d'images pour chaque galerie et que mon swf est systématiquement inclus dans la même page (ma page d'index), ceci implique d'indiquer à mon swf où il doit puiser ses images.

    Bref, au lancement, mon swf a besoin de récupérer le chemin cible du répertoire dans lequel puiser. Comme je ne veux pas créer un fichier swf unique à chaque galerie, j'aimerais plutôt un fichier générique et donc créer une variable php contenant le chemin du répertoire que le swf n'aurait qu'à récupérer.


    L'idée pour moi serait de déclarer une variable au sein de ma page php, comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $chemingalerie ="galeries/corporate";
    Comment puis-je faire ensuite pour la récupérer dans mon swf ?

    Merci d'avance pour le coup de main ! ;-)

  2. #2
    Rédacteur

    Avatar de The_Pretender
    Homme Profil pro
    Formateur Développement / Programmation
    Inscrit en
    Juin 2004
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Formateur Développement / Programmation
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2004
    Messages : 739
    Points : 4 673
    Points
    4 673
    Par défaut
    Bonjour,

    Soit tu passes tes différents chemins avec le embed HTML - flashvars.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <object type="application/x-shockwave-flash" data="application.swf" width="550" height="400" >
    <param name="movie" value="application.swf" /> 
    <param name="FlashVars" value="var1=1&var2=2" />
    </object>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
    paramObj['var1']// pour récupérer la variable flashvars
    paramObj['var2']
    Soit tu utilises du flash remoting : echanger des données entre php et flash

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    166
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 166
    Points : 332
    Points
    332
    Par défaut
    les flashVars il faut les éviter au maximum car ça pose des problèmes sur certaines combinaisons os/navigateur/player, donc c'est un peu pénible à gérer question portabilité.

    personnellement histoire de me simplifier la vie, je ne m'en sers pas du tout. même pour les permalinks, je fais passer les get vars en variables de session pour les récupérer avec un script appelé par flash


    donc ce que je recommande c'est d'appeler un script php depuis flash.

    pas la peine de s'emmerder avec flash remoting pour un truc aussi simple.

    en AS2 faut utiliser soit un objet LoadVars, soit un objet XML (astuce importante à connaitre en as2: l'objet XML permet de récupérer n'importe quelles données ascii, et pas seulement du xml). que tu utilises LoadVars ou XML, il faut utiliser leur évènement onLoad pour récupérer ce que renvoie ton script php.


    bon évidemment, passer par les flashVars c'est beaucoup plus simple... mais c'est moins fiable car c'est sensible aux bugs de navigateur

  4. #4
    Membre du Club Avatar de Gizmil
    Profil pro
    Inscrit en
    Août 2007
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2007
    Messages : 163
    Points : 60
    Points
    60
    Par défaut
    Hello ! Merci à vous deux pour les réponses !!

    Je suis parti sur LoadVars, c'est ce qui me semblait le plus simple d'accès !

    Seulement, j'ai un souci, ça ne fonctionne pas ! Voici comment je déclare mes variables dans ma page web:

    PHP :
    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
    <?php
    switch ($type) {
            case "corporate" :
            $cheminPhotos = "pages/corporate_gallery";
            break;
            case "packshots" :
            $cheminPhotos = "pages/packshots_gallery";
            break;
            case "mariages" :
            $cheminPhotos = "pages/mariages_gallery";
            break;
            case "portraits" :
            $cheminPhotos = "pages/portraits_gallery";
            break;
    }
    ?>
    Et voici comment je tente de récupérer ma variable dans mon Flash :

    AS2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var dossierPhotos:String = "noWay";
    var externalPHPVar:LoadVars = new LoadVars();
    externalPHPVar.onLoad = function(succes) {
            if (succes) {
                    racine.dossierPhotos = this.cheminPhotos;
            }
    };
    externalPHPVar.load("index.php");
    A noter que "index.php" est la page même dans laquelle est chargée l'animation Flash.

    Mon fichier index.php est à la racine du site
    Mon anim Flash chargée dans index.php est ici : www/pages/visio.swf
    Le code php cité plus haut est déclaré dans index.php

Discussions similaires

  1. Envoi de variables depuis flex vers une page PHP
    Par georges_jung dans le forum Flex
    Réponses: 3
    Dernier message: 10/03/2009, 14h45
  2. Transmettre une variable depuis php impossible
    Par omdafer dans le forum Flash
    Réponses: 4
    Dernier message: 28/08/2007, 18h45
  3. [AS]variable de php vers Flash
    Par adr22 dans le forum Flash
    Réponses: 2
    Dernier message: 14/05/2007, 09h47
  4. charger une variable php dans flash en 2 temps
    Par jc_cornic dans le forum Flash
    Réponses: 1
    Dernier message: 01/04/2007, 16h10
  5. Réponses: 9
    Dernier message: 22/03/2007, 11h37

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