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 8] faire causer php et flash


Sujet :

Flash

  1. #1
    Membre éclairé
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Points : 823
    Points
    823
    Par défaut [FLASH 8] faire causer php et flash
    Bonsoir, je fais un petit jeu de plateau en flash et j'utilise php pour être serveur de jeu, gestion des joueurs, scores, tours de jeu etc...

    J'ai essayé les sockets pour faire causer les applis flash des joueurs et le serveur commun php... Le problème est que avec un serveur mutualisé OVH, la méthode socket_create n'existe pas...

    J'utilise donc une fonction flash (sendAndLoad) pourqua flash envoie à php les infos.

    Pour être plus précis.

    Début de la partie, le premier joueur joue et envoie à php sa nouvelle position, j'aurais aimé que php envoie à tous les joueurs la nouvelle position du joueur 1 mais sans socket, je suis obligé de faire autrement, à savoir, chaque joueur questionne toutes les X secondes php pour savoir si un truc a changé...

    Ma question (enfin), existe t il autre chose qu'une socket pour faire causer php avec autre chose (flash par exemple) ???
    Si non, est-ce quelqu'un a déjà testé un jeu multijoueur simple (pas de 3D, ni de temps réel) avec flash, php et la méthode sendAndLoad ??

    Merci d'avance

    ++
    JC

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Bonjours donc j'ai trouvé se petit tutos qui poura t'aidé.
    http://www.pixtiz.com/fr/blog/flash/...l-loadvars.php

    moi j'ai un peu de probleme.

    disons que j'ai mon site perso pour l'IUT a refaire et pour se faire je voudrai que mon flash comunique avec ma base de donnée mysql.

    pour le premier problème rencontré j'ai mon flash qui envoie bien mon post (tout du moins je supose) mais je ne reçois rien dans mon php.

    voila mon code AS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on (release){
    	var test:String = "plump";
        getURL("algo.php","","POST");
    }
    et mon code php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      <?
      $variable = utf8_decode($_POST['test']);
      echo $variable;
      ?>
    il n'y à pas d'erreur de renvoyer mais j'ai simplement une page blanche.

    si vous voulez jeter un oeil : http://195.83.128.55/~src6a12/ c'est sur le lien algo ke je travail uniquement pour l'instant

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    autant pour moi... c'est le flash qui ne me l'envoie pas... alors comment je dois l'appelé?
    mon php ne reconai pas "test".

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    bon je viens de tester avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on (release){
    	var test=4;
        getURL("algo.php","","POST");
    }
    mon 4 est bien renvoyé... alors que faire pour avoir une chaine de caractaire?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    Premiere étape de réussi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on (release){
    	var test=String("plump");
        getURL("algo.php","","POST");
    }
    ps: dsl de spamé mais ça m'aide à réfléchir...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    donc me revoila...

    quand je clic sur mon lien en flash, il fait ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on (release){
    	var lien=String("algo");
        getURL("reponse.php","","POST");
    }
    ensuite je récupere dans mon reponse.php et execute :

    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
    <?
      include("config.inc.php");
      mysql_connect(SERVEUR,LOGIN,PASS);
      mysql_select_db(BASE);
      $orderby=$_POST['lien']._id;
      $select=$_POST['lien'].sst;
      $req="SELECT * FROM ".$_POST['lien']." ORDER BY $orderby asc";
    // pour l'exemple il fait "select * from algo order by algo_id
      $result=mysql_query($req);
      $nb=mysql_num_rows($result);
      $i=0;
      $j=0;
      function envoi($var, $val){
    	echo "&".$var."=".utf8_encode($val);
      }
     
    // une fonction que je n'ai pas encore testé, je prie pour que ça fonctionne...
     
      while ($i<$nb)
      {
      $data = mysql_fetch_object($result);
      $liennb="lien".$i;
      $lien=$data->$select;
      envoi($liennb,$lien);
      $i=$i+1;
      }//donc ac la fonction envoi il devrai me le renvoyer a mon flash... sachant que j'ai fai une boucle il m'envoi le contenu petit a petit.
      ?>
    et enfin dans mon flash qui receptionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var monChargemt_donne = new LoadVars();
    monChargemt_donne.onload = function(success) {
    	if (success){
    		_root.lien1 = monChargemt_donne.lien1;
    	}
    };
    monChargemt_donne.load("reponse.php",monChargemt_donne,"POST");
    je voudrai faire une boucle pour récupéré tout mes lien... mais je crois pas que l'on puisse créé une varable "_root.lien+i"...

    je commence a manger mon clavier...

  7. #7
    Membre éclairé
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Points : 823
    Points
    823
    Par défaut
    Salut, pour récupérer des variables du style partie0, partie1, partie2...

    ++
    JC

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 18
    Points : 17
    Points
    17
    Par défaut
    donc voila se que j'ai réussi aujourd'hui : voila ma page web


    a partir de mon 1ere swf j'envois un post en AS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    on (release){
    	var lien=String("algo");
        getURL("requete.php","","POST");
    }
    que je récupere dans une page php (requete.php) et m'enregistre les infos dans une table appelé "page"

    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
    <?
      include("config.inc.php");
      mysql_connect(SERVEUR,LOGIN,PASS);
      mysql_select_db(BASE);
      $orderby=$_POST['lien']._id;
      $select=$_POST['lien'].sst;
      $requete="DELETE FROM page WHERE page_id=1";
      $resultat=mysql_query($requete);
      $requetes="INSERT INTO page values(1,'".$_POST['lien']."','$select','$orderby')";
      $resultats=mysql_query($requetes);
      $req="SELECT * FROM page ORDER BY page_id asc";
      $result=mysql_query($req);
      $nb=mysql_num_rows($result);
      $i=0;
      $j=0;
      echo "il y a ".$nb." article dans le catalogue<br>";
      ?>
      <table>
      <? while ($i<$nb)
      {
      $data = mysql_fetch_object($result);
      echo"<tr>";
      echo"<td>".$data->matiere."</td>";
      echo"</tr>";
      $i=$i+1;
      }
      ?>
      </table>
    ensuite avec mon 2eme swf je vais cherché dans mon reponce.php à l'aide de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var monChargemt_donne = new LoadVars();
    monChargemt_donne.onload = function(success) {
    	if (success){
    		_root.lien1 = monChargemt_donne.lien1;
    	}
    };
    monChargemt_donne.load("reponse.php",monChargemt_donne,"POST");
    et dans un text dynamic j'associe la variable _root.lien1

    et les donné présente dans mon reponce.php sont celle-ci :
    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
    <?
      include("config.inc.php");
      mysql_connect(SERVEUR,LOGIN,PASS);
      mysql_select_db(BASE);
      $req="SELECT * FROM page WHERE page_id=1";
      $result=mysql_query($req);
      $nb=mysql_num_rows($result);
      $j=0;
      while ($j<$nb)
      {
      $data = mysql_fetch_object($result);
      $orderby=$data->identifiant;
      $select=$data->soustitre;
      $mati=$data->matiere;
      $j=$j+1;
      }
      $req="SELECT * FROM $mati ORDER BY $orderby asc";
      $result=mysql_query($req);
      $nb=mysql_num_rows($result);
      $i=0;
      $j=0;
      function envoi($var, $val){
    	echo "&".$var."=".utf8_encode($val);
      }
     while ($i<$nb)
      {
      $data = mysql_fetch_object($result);
      $k=$i+1;
      $liennb="lien".$k;
      $lien=$data->$select;
      envoi($liennb,$lien);
      $i=$i+1;
      }
      ?>
    j'espere aidez en mettant déjà ça...

Discussions similaires

  1. faire parler php et flash sans sockets
    Par jc_cornic dans le forum Langage
    Réponses: 6
    Dernier message: 01/05/2007, 11h24
  2. [FLASH 8] Probleme variable php vers flash : accent
    Par jbidou88 dans le forum Flash
    Réponses: 2
    Dernier message: 22/03/2007, 14h52
  3. [FLASH 8] Echange entre php et flash
    Par jbidou88 dans le forum Dynamique
    Réponses: 1
    Dernier message: 18/12/2006, 09h35
  4. [FLASH 8] Variables entre php et flash
    Par jbidou88 dans le forum Flash
    Réponses: 2
    Dernier message: 23/11/2006, 13h27
  5. Réponses: 3
    Dernier message: 12/02/2005, 00h52

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