Structure du jeu - 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 : Structure du jeu (/showthread.php?tid=2363) |
Structure du jeu - comg - 05-02-2008 Bonjour à tous. Je voulais savoir quel est d'apres vous la meilleure structure (rapidité, ergonomie, evolutivité) pour le site de jeu. Si je suis trop abstrait je vais vous donner ma methode et éspère que vous pourriez m'aider à m'ameliorer dans ce domaine (parceque franchement ça me semble bordelique ) Alors voila : Les liens se font en Code : monsite.com/?do=maison:dormir L'index recupere le $_GET['do'], l'explose par rapport aux ':' et je stocke dans $do : Code PHP :
Ensuite j'ai des if, elseif, else qui verifie la valeur de $do[0] (maison) et fait un include de la bonne page : Code PHP :
Ensuite c'est dans la page inclue que je verifie le $do[1] correspondant generalement à l'action. Par le meme principe de if,elseif,else j'appelle une fonction correspondant a l'action : Code PHP :
Enfin je verifie dans la fonction la valeur eventuelle d'autre argument Code PHP :
Grossomodo voici comment je fonctionne. Ce qui me gene est que les visiteurs ont acces aux valeurs transmises dans la barre d'adresse (comment ils font chez ogame ?) Voila si vous avez des commentaires, des remarques ou des suggestions à me faire, je suis preneur. Si vous ne comprenez pas tout ce que j'ai voulu dire n'hesitez pas a me le demander. Merci d'avance de votre aide ComG aka Chantal PS : je n'ai rien trouvé concernant la structure du site sur le forum... Ai je mal cherché ? Si oui je m'en excuse. RE: Structure du jeu - keke - 05-02-2008 privilégie plustot des formulaires html pour envoyer des données. Tu les récupères sous forme de POST et ça peut t'éviter tout un tas de fraude. Ensuite, soit tu fais une page par action (comme sur le site Zepirates.com), soit tu fais une page principale (comme sur mon site Magales.com) Les 2 solutions ont des avantages et des inconvénients. La deuxième solution ne doit pas être retenu sur un portail car elle bloque relativement bien le référencement (à moins de contourner par htaccess) Par ailleur, tu t'es bien compliqué la tache. il faut savoir que sur un lien de type : toto.php?var=1&toto=2&tutu=3 Tu récupères les variables de la manière suivante : echo $_GET['toto'] ; // affiche 1 echo $_GET['var'] ; // affiche 2 echo $_GET['tutu'] ; // affiche 3 Pas besoin d'explode pour cela. N'hésite pas à lire des tutoriaux avant de continuer ton projet, car sur le coup, il s'agit d'un point souvent mentionner dans nombreux forums, et dont la correction pourra te demander 1/2 de ton temps de coddage si tu dois le corriger après ! Kéké qui est passé par là ... sic ! RE: Structure du jeu - uriak - 05-02-2008 à priori, $_POST n'est pas plus sûr que $_GET, il permet juste d'éviter de s'encombrer de longues adresses. dans les deux cas, il faut nettoyer les variables qui sont récupérée, et de toute façon revérifier les conditions d'actions. RE: Structure du jeu - comg - 05-02-2008 Alors pour le toto.php?var=1&toto=2&tutu=3 je le sais bien, mais justement le explode permet de ne travailler qu'avec une seul variable. Je ne sais plus bien pour quoi j'avais privilégié cette manière mais je pense que cela reviens peu ou proue au même. (les utilisateurs savent pas trop à quoi correspondent les chiffres en fait) Ensuite ce qui me dérange avec les formulaires c'est les boutons, mais c'est vrai que j'avais commencé à le faire comme ça entierement et c'est vrai que c'est transparent... Je vais sans doute y revenir en fait. Merci de donner ton point de vue kéké. Je vais faire des tests... EDIT : Bien noté uriak, merci. Qu'entend tu par 'nettoyer les variables' ? RE: Structure du jeu - X-ZoD - 05-02-2008 de base : - j'evite les if - je ne passe jamais rien en get (ca ne veux pas dire que c'est pas fiable) - j'utilise des classes poru faire propre et intuitif - et j'installe le client dans un fauteuille en cuire en utilisant ajax et le js plutot que de faire des rechargement de pages a tout vas sinon pour ton enchainement de if que tu va faire je suggere un tableau associatif du coup Code PHP :
Code PHP :
mais avec ton cas "particulier tu peu carement faire ca Code PHP :
mais c'est moins secure deja .. ca depend de ce que tu fais dans tes pages par la suite RE: Structure du jeu - uriak - 05-02-2008 (oui, pour l'inclusion de fichier, c'est chaud chaud) par contre les tableaux et les switch sont le bien, pour les cas multiples. Par nettoyer j'entends utiliser les magic_quotes (enfin s'assurer qu'ils y sont), pour éliminer l'injection, de même caster les valeurs numériques (identifiants en particulier) en nombre. Quelques fonctions simples à faire et à réutiliser. Ensuite pour les classes, il faut se familiariser avec la programmation orientée objet. A l'arrivée tu appelles des méthodes avec peu d'arguments, car les variables utiles sont déjà membres des classes (un des intérêts de la POO). Et si tu as besoin de changer ta manière de faire, tu n'auras qu'à modifier la classe générée avant les appels de méthodes. RE: Structure du jeu - X-ZoD - 05-02-2008 voila .. je rejoins uriak RE: Structure du jeu - Eluox - 05-02-2008 Personnelement, sur mielwar j'utilsie un systeme d'include par $_GET . C'est pas super secure je pense mais on a pas encore eu de probleme. Du genre sur l'index Code PHP :
RE: Structure du jeu - Ziliev - 05-02-2008 X-ZoD a écrit :J'me permet de réagir là dessus, le switch est 2 fois plus rapide que l'array associatif pour ce genre de choses (testé et approuvé par un p'tit script maisonq ue je dosi encore avoir sous la main si ca vous dit ^^). Pi en plus ca permet de définir une valeur par défaut pour les p'tits rigolo qui tentent de pirater en modifiant tes valeurs envoyées. Après effectivement POST ou GET même combat, simplement je préfère le POST au GET parce qu'une URL fixe ca fait plus joli, pi que pour pirater un POST 'faut s'y connaitre un peu plus que pour un GET (être équipé ou intelligent quoi, pi en plus le joueur est pas tenté en voyant toutes ces belle sinformations dans sa barre d'url ). Quand à include une page dont le nom vient d'un GET, c'est un peu comme jouer à la roulette russe avec un AK47 hein ... Personellement je suis sur du POST, avec des if( isset( $_POST[ submit de l'action en question ]) ) pour les résolutions et l'affichage ensuite. 'sur qu'AJAX c'est plus classe, mais bon 'faut gérer aussi. J'vais pas me risquer à critiquer hein, perso j'y connais rien Juste quelques JS par ci par là pour vérifier les champs entrés (bien que le PHP vérifie aussi après, c'est juste pour le confort du client ca, parce que bon JS dans le genre piratable c'est pas mal non plus). RE: Structure du jeu - Plume - 05-02-2008 comg a écrit :Ensuite j'ai des if, elseif, else qui verifie la valeur de $do[0] (maison) et fait un include de la bonne page : X-ZoD a écrit :sinon pour ton enchainement de if que tu va faire je suggere un tableau associatif dark vengeur a écrit :Personnelement, sur mielwar j'utilsie un systeme d'include par $_GET . Messieurs .. Qu'avez-vous fumé avant de venir ? Vous auriez au moins pu faire partager ! Vos méthodes sont pas terribles, terribles. Dans la plupart des cas, ça nécessite quand même l'édition du fichier source à chaque nouvelle page ! :wow: Voilà mon idée [ évidemment pas optimisé, c'est de l'arrache ] : Code PHP :
Voilà grossièrement comment j'vois les choses. Commentaires s'il vous plait ! L. |