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

Flex Discussion :

Problème de mise à jour automatique du SWF


Sujet :

Flex

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Problème de mise à jour automatique du SWF
    Bonjour,

    Voila j'ai un petit soucis... J'ai intégrer un swf (correspondant à un graphique flex) dans une page de mon site :
    - Dans le haut de la page on trouve des cases a cocher, l'utilisateur choisit de cette manière les données à afficher sur le graphique.
    - Quand l'utilisateur clique sur une des cases, un fichier XML est automatiquement généré correspondant au choix.


    Dans mon fichier MXML:
    - Je crée un "<mx:Model" qui récupère le fichier XML.
    - Je crée également un PieChart qui a pour dataProvider le modèle crée (donc les données XML)
    => tout fonctionne trés bien !

    Sauf que...
    Quand l'utilisateur change de choix de données, le swf ne se met pas à jour.. Il faut qu'il clique plusieurs fois sur la case de son choix pour que les données soient enfin les bonnes.

    Je pense à un problème de compilation. j'ai trouvé sur plusieurs forums des solutions mais après les avoir toutes testées, je n'ai toujours pas de résultats satisfaisant.
    Étant débutant, il se peut que des notions me soient échappées..

    Je vous remercie par avance de l'aide que vous pourriez m'apporter.

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant Angular / Java J2EE
    Inscrit en
    Novembre 2008
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant Angular / Java J2EE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 545
    Points : 875
    Points
    875
    Par défaut
    Salut,

    Il va nous falloir un petit peu de code pour pouvoir t'aider.
    que se passe t'il lorsque tu cliques sur la checkbox ? tu envoies toi-même un event, ou bien tu utilises les events déjà fournis ('change' par exemple) ?

    Je pense à un problème de compilation.
    Qu'entends tu par là ? si tu n'as pas d'erreur au moment de la compilation, c'est que le problème ne doit pas venir de là. (et dans tout les cas, une erreur de compilation ne te permet pas de générer un nouveau swf).

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Mes boutons radio sont gérés par un évènement "onchange" qui lance une function js. Celle-ci submit un formulaire qui lance donc une page avec les données à afficher (création du fichier XML + graphique swf ).
    le chargement se fait, la bonne page s'affiche, mais le swf n'est pas à jour.

    Je parlais de compilation car il me semble que le swf n'utilise pas le bon fichier XML, il utilise l'ancien et non pas celui qui a été mis a jour..
    Mais en effet peut-etre qu'il n'y a aucun rapport, je n'y connais pas grand chose.

    Voici quelques bouts de mon code:

    fichier MXML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?xml version="1.0"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" viewSourceURL="srcview/index.html" backgroundColor="#d4cba7">
    <mx:Model id="results" source="results.xml"/>
        <mx:Text text="{results.question.num}" width="216"/>
        <mx:Panel title="">
            <mx:PieChart id="myChart" dataProvider="{results.choix}" showDataTips="true" width="202" height="211">
                <mx:series>
                    <mx:PieSeries field="resultat" nameField="name"/>
                </mx:series>
            </mx:PieChart>
            <mx:Legend dataProvider="{myChart}"/>
        </mx:Panel>
    <mx:Button label="Rafraichir" click="results.send();"  right="10" top="10"/>
    </mx:Application>
    fichier php (générant le fichier XML + affichage du swf):
    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
    // écriture du fichier de données
                $file= fopen("../user/src/results.xml", "w");
                 $tabquestion= array();
     
                        $_SESSION['utilisateur']->mysql = new mysql();
     
                        $tabquestion=$_SESSION['utilisateur']->getTabQuestion($numenquete);
     
     
                        foreach ($tabquestion as $i=>$valeur)
                        {
                            $_xml ="<?xml version=\"1.0\" encoding=\"iso-8859-1\" ?>\r\n";
                            $result = $_SESSION['utilisateur']->mysql->select_query(array('*'), 'reponse', 'num_enquete="'.$numenquete.'" and num_question="'.$valeur.'"');
                            $_xml.="\t\t<question num=\"" . $valeur ."\" >\r\n";
                            while ($row = mysql_fetch_array($result)) 
                            {
                                $_xml .="\t\t\t<choix name=\"" . $_SESSION['utilisateur']->getlibChoix($row["num_choix"]) . "\">\r\n";
                                $_xml .="\t\t\t\t<resultat>" . $row["nombre"] . "</resultat>\r\n";
                                $_xml .="\t\t\t</choix>\r\n";
     
                            }
                            $_xml .="\t\t</question>\r\n";
                        }
                fwrite($file, $_xml);
                fclose($file);
                //fin result.xml
    Voilà...

    Merci pour l'aide!

  4. #4
    Membre éclairé
    Homme Profil pro
    Consultant Angular / Java J2EE
    Inscrit en
    Novembre 2008
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant Angular / Java J2EE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 545
    Points : 875
    Points
    875
    Par défaut
    Salut,
    Lorsque tu dis
    Citation Envoyé par elsa_georges Voir le message
    Mes boutons radio sont gérés par un évènement "onchange" qui lance une function js.
    Aurais-tu ce code s'il te plaît ?
    Citation Envoyé par elsa_georges Voir le message
    Je parlais de compilation car il me semble que le swf n'utilise pas le bon fichier XML, il utilise l'ancien et non pas celui qui a été mis a jour..
    As-tu essayé de vider le cache de ton navigateur ?

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Voici mon code pour les btn radios:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <form id="form_enquete" method="post" action="sondage.php?action=enquete">';
    			for ($i=1;$i<count($enquete)+1;$i++)
    			{
    				echo'<input type="radio" name="choix" id="enquete" value="'.$enquete[$i].'" onchange="verif_choix(this.form)"> '.$_SESSION['utilisateur']->getNomEnquete($enquete[$i]).'<br />';
    			}
    			echo '<br />
    </form>';
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function verif_choix(form)
    			{
    			alert("ok");
    				for(var i=0;i<document.forms["form_enquete"].elements["choix"].length+1;i++){
    					if(document.forms["form_enquete"].elements["choix"][i].checked){
    						VarRecup=document.forms["form_enquete"].elements["choix"][i].value;
    						alert(VarRecup);
    						document.forms["form_enquete"].action='sondage.php?action=enquete&num=' + VarRecup;
    						document.forms["form_enquete"].submit();
     
    					}
    				}
    			}

    Et oui j'ai déjà vidé le cache et j'ai même essayé en mettant le bout de code ci-dessous dans ma php qui gère l'affichage de mon swf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Meta http-equiv="Pragma" content="no-cache">

    L'erreur pourrait-elle venir de mon code php ou js alors que ma page change correctement à la sélection du bouton radio ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/10/2011, 12h52
  2. problème installation mise à jour automatique
    Par Magalie33 dans le forum Windows Vista
    Réponses: 1
    Dernier message: 25/06/2009, 22h43
  3. Réponses: 6
    Dernier message: 19/09/2006, 08h48

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