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

Flash Discussion :

[FLASH MX2004] problèmes d'enregistrement XML


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Par défaut [FLASH MX2004] problèmes d'enregistrement XML
    Bonjour,

    J'ai développé un petit jeu sous flash avec les scores enregistrés dans un fichier XML. Problème : l'enresgitrement ne se fait pas. Débutante complète en PHP, je pense que c'est de là que vient l'erreur. Quelqu'un peut-il m'aider ?

    Voici "scores.xml"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="UTF-8" ?>
    <root>
    	<joueur nom="Joueur 1" score="150"/>
    	<joueur nom="Joueur 2" score="270"/>
    	<joueur nom="Joueur 3" score="210"/>
    	<joueur nom="Joueur 4" score="50"/>
    </root>
    Voici "uploadxml.php"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <body bgcolor="#000000">
    <?
    // Récupération des données via POST
    $a_renvoyer=$_POST["var_envoi"];
     
    // Enregistrer les donnees
    $fichier = 'scores.xml';
    $fp=fopen($fichier,"a+");
    fwrite($fp,"$a_renvoyer \n");
    fclose($fp);
    ?>
    Et enfin ma fonction d'enregistrement dans mon .fla :

    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
    //variables pour l'enregistrement du score
    Sortie = new LoadVars();
    Entree = new LoadVars();
     
    function enregistrer_score():Void {
    	Sortie.var_envoi = "<joueur nom=\""+nomjoueur+"\" score=\""+scorefinal+"\" />";
    	Sortie.sendAndLoad("uploadxml.php", Entree, "POST");
    	Entree.onLoad = function(success) {
    		if (success) {
    			alerte = "Enregistrement reussi !"
    			timer();
    		}
    	}
    	help_btn._visible = true;
    	rejouer_btn._visible = true;
    	valider_btn._visible = false;
    }
    Merci d'avance pour votre aide !

  2. #2
    Membre confirmé Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Par défaut
    Heu... y'a personne pour m'aider ? Même un tout petit peu ????

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    642
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 642
    Par défaut
    Je n'y connais pas grand chose, mais je l'ai comparer à mon code xml, php et as de mon livre d'or.

    Tu n'as pas besoins des root dans ton xml, car comme tu referme la balise, cela pourrait bloquer l'arrivé des variables.

    Sinon, pour éviter des problèmes d'espace je rajouterais cette ligne dans ton code php:

    $a_renvoyer=stripslashes($a_renvoyer); que tu placeras après celle-ci:

    $a_renvoyer=$_POST["var_envoi"];

    C'est quoi comme jeux?

    Peut-on le voir?

  4. #4
    Membre confirmé Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Par défaut
    Salut !

    Tout d'abord, merci beaucoup poour ta réponse. Le problème, c'est que si j'enlève les <root> de mon fchier, j'arrive plus à afficher mes scores dans mon tableau de flash. !!!!! Dois-je faire une autre méthode d'affichage pour l'enlever (j'avais utilisé un composant DataGrid). Ainsi, le php devrait fonctionner ?

    Sinon, pour le jeu, c'est un petit jeu de parodie de l'entraînement d'une équipe folklos de rugby ! Faut faire les mouvements demandés quand le coach apparait et discuter dès qu'il disparait ! Il est en ligne, mais le serveur sur lequel il est en maintenance ! Je comptais donner l'adresse quand il marcherait car c'est grâce au forum que j'ai pu le faire (une manière de dire merci à tous ceux qui m'ont aidé quoi !!!! )

    Voilààà !

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    642
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 642
    Par défaut
    C'est gentils de nous montrer ton jeux.

    Si jamais, j'en avais fait un il y a longtemps sur http://www.membres.lycos.fr/fortrox/

    Bon, il est moyen, je n'ai jamais eu le temps de le terminer.

    Pour les score j'étais passer par une base de donnée mysql, mais le xml est pas mal du tout, je vais essayer de t'aider à trouver une solution.

    Alors pour la lectre tu as mis quoi comme code?

  6. #6
    Membre confirmé Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Par défaut
    Pour afficher mes scores dans mon DataGrid, voici mon code :
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    //tableaux d'affichage
    import mx.controls.gridclasses.DataGridColumn;
    scores_tab.addColumnAt(0,"Rang");
    scores_tab.addColumnAt(1, "Nom");
    scores_tab.addColumnAt(2, "Points");
    //dimensions des colonnes
    scores_tab.getColumnAt(0).width = 60;
    scores_tab.getColumnAt(2).width = 90;
    scores_tab.getColumnAt(1).width = scores_tab.width-scores_tab.getColumnAt(2).width-scores_tab.getColumnAt(0).width;
     
    //variable pour définir le chemin depuis la racine parce que sinon, this se rapporte à actu
    var chemin = this;
    var nbscores:Number;
    var rg:Number=1;
    //------------------CREATION DE L'OBJET XML------------------------
    winners = new XML();
    // les espaces vides sont supprimés
    winners.ignoreWhite = true;
    //chargement du document XML
    winners.load("scores.xml");
    //------------------AFFICHAGE DU TEXTE------------------------
    winners.onLoad = function() {
    	nbscores=winners.firstChild.childNodes.length;
    	//on fait une première boucle pour avoir les valeurs de tous les scores possibles
    	for (j=300;j>=0;j--) {
    		//on fait une deuxième boucle pour avoir les valeurs des scores des joueurs
    		for(i=0; i<nbscores; i++){
    			//si le score du joueur est égal à celui mémorisé dans j, on l'affiche
    			if(winners.firstChild.childNodes[i].attributes.score==j){
    				var objet= {Rang:rg,Nom:winners.firstChild.childNodes[i].attributes.nom,Points:winners.firstChild.childNodes[i].attributes.score};
    				var objetAjouté = chemin.scores_tab.addItem(objet);
    				rg++;
    			}
    		}
    	}
    }
    //winners.close();
    this.retour_btn.onRelease=function():Void{
    	_root.scores_mc.unloadMovie();
    }
    C'est peut-être pas le meilleur, mais ça marche !!!!

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/01/2006, 20h30
  2. [FLASH MX2004] Problème avec un datagrid & xml
    Par cedonline dans le forum Flash
    Réponses: 72
    Dernier message: 15/11/2005, 15h21
  3. [FLASH MX2004] Problème de reconnaissance des caractères
    Par Spikefreeman dans le forum Flash
    Réponses: 10
    Dernier message: 04/01/2005, 23h08
  4. [FLASH MX2004] Problème pour faire un bouton play
    Par melanie075 dans le forum Flash
    Réponses: 13
    Dernier message: 16/12/2004, 22h55
  5. [FLASH MX2004] Problème de menu avec explorer
    Par lyne dans le forum Flash
    Réponses: 2
    Dernier message: 24/08/2004, 19h34

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