Créer une map - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : Créer une map (/showthread.php?tid=5200) Pages :
1
2
|
Créer une map - Redoine - 29-01-2011 Bonsoir, Je débute le PHP et je voudrais créer une map pour un jeu par navigateur seulement j'ai quelques problème ... Le jeu est du même style que worldofshinobi.eu ou encore travian ... Donc une map avec des icon de village ayant un liens vers le profil du joueur ...
Le hic c'est que le résultat ... hum, n'est pas ce que je voudrais avoir.J'ai 3 joueur inscrit dessus et je ne vois que 2 village et non 3 ... Auriez vous une idées ? Cordialement et merci avant tout Redoine ! RE: Créer une map - php_addict - 29-01-2011 impossible de te repondre on ne connait pas la structure de ta base de donnée...et même si l'on avait la structure de ta base de donnée tu ne prend pas le problème dans le bon sens il me semble... peut être devrais tu songer à séparer la récupération des données et ton affichage des données, je tente une explication: dans un premier temps tu récupère tes données (mysql) que tu traites pour obtenir un array() ou un objset JSON ou autre, par exemple ton but doit etre d'obtenir un truc du genre: $cases=array( [0] => array ('x'=> 1 , 'y' => 12 , 'type_terrain' => 'sable' , 'id_joueur' => 32 , 'pseudo'=> 'Bob' ) [1] => array ('x'=> 2 , 'y' => 12 , 'type_terrain' => 'marais' , 'id_joueur' => 3 , 'pseudo'=> 'arthur' ) [2] => array ('x'=> 3 , 'y' => 12 , 'type_terrain' => 'terre' , 'id_joueur' => 135 , 'pseudo'=> 'John' ) ); une fois tes données modélisées dans un array (ou objet json) tu peut facilement les afficher en HTML/CSS genre: foreach($cases as $data) { // j'affiche } ce n'est qu'un exemple stupide, mais mélanger ainsi ton code php et ton code html est absolument horrible d'autre que moi te donnerons certainement un avis plus éclairé RE: Créer une map - Redoine - 29-01-2011 Hum je vais refaire un brouillons et vous tenir au courant de ce qu'il se passe sur ce je vous remercie RE: Créer une map - Revan - 29-01-2011 Citation :for ($i= 1; $i <= count($downALL['village']) ; $i++) tu as essayé avec $i=0 ? J'ai rapidement testé chez moi, et ça fonctionne... RE: Créer une map - Redoine - 29-01-2011 C'est à dire ?
C'est parreille ...J'ai une base : Jeu ayant une table users qui a plusieurs champs ... Et j'ai 4 id, 4 inscrit je veux afficher les village des 4 id selon les caractèristique des champs Exemple : Champs 'skin' -> Feu On affiche alors au coordonnée X et Y RE: Créer une map - Kurogane - 30-01-2011 Je soutiens php_addict sur le mélange html/php notamment dans ta boucle "for". C'est inesthétique et selon la version php que tu utilisera cela te posera probléme, utilise un echo dans ta boucle pour afficher l'html ^^ Ensuite pour ton probléme, mysql_fetch_array ne traite qu'une ligne par "appel" donc dans ta boucle tu traite encore et toujours le même village. Pour ton count($downALL['village']) , fais afficher sa valeur avant avec un echo mais à mon avis il ne te donnera que "1". La solution serait de mettre à la fin de ta boucle : $downALL = mysql_fetch_array($requeteALL); pour traiter une nouvelle ligne. Et pour le nombre max dans ta boucle , je dirais de faire une requete SQL sur la table users en mettant count(*) dans le select. RE: Créer une map - Redoine - 31-01-2011 (30-01-2011, 12:36 PM)Kurogane a écrit : Je soutiens php_addict sur le mélange html/php notamment dans ta boucle "for". Mais oui quelle ... Kurogane merci de m'avoir remémorer tout cela par contre sur le echo je ne savais pas ... je ferais comme tu le dit et merci encore il me reste encore 2, 3 petite erreur a traité et je vous fait part de mon bilan ! EDIT : Notice: Undefined index: 186 in C:\XXX\XX\XXX\map.php on line 22 Notice: Undefined index: 32 in C:\XXX\XX\XXX\map.php on line 22 Notice: Undefined index: 230 in C:\XXX\XX\XXX\map.php on line 22 Notice: Undefined index: 182 in C:\XXX\XX\XXX\map.php on line 22 Je n'ai jamais vu ce genre d'erreur ... RE: Créer une map - niahoo - 31-01-2011 pourtant c'est une erreur très courante, ce signifie que à la ligne 22, quand tu appelles $mon_tableau[186], il se trouve que ton tableau n'a pas de "case" 186. le truc bizzare c'est que si map.php est le code que tu nous montres et qu'il est en version intégrale, alors la ligne 22 correspond à Code : <a href="profile.php?id=<?php echo $_SESSION['userid'];?>"><img src="default/images/Jeu/icon<?php echo $_SESSION['skin']; ?>.png" style="position:absolute;top:<?php echo $_SESSION['posY'];?>;left:<?php echo $_SESSION['posX'];?>"/></a> mystère RE: Créer une map - christouphe - 31-01-2011 en 22 non mais dans celle-ci oui:
RE: Créer une map - Redoine - 31-01-2011 J'ai oublier de vous dire que je passe d'une boucle for à une while :
|