(29-04-2016, 11:54 AM)xanthius a écrit : Bonjour,
j'aimerais récolter un peu d'informations concernant la procédure d'inscription sur vos sites.
Quand pour un nouveau joueur vous devez le renseigner sur plusieurs tables différentes vous vous y prenez comment ?
Du style pour un nouveau joueur, vous devez le faire rentrer sur la table A,B,C
Pour ma part j'utilise l'auto increment pour mes id chose qui m'avait été conseillé pour éviter que le système s'emballe lors de l'inscription de plusieurs joueurs à la fois mais j'ai peur que ça me pète entre les doigts ^^
Voila ma manière de faire (qui n'est peut être pas la meilleure, mais elle fonctionne ):
J'ai par exemple une table user (liste les joueurs) et une table qui liste TOUTES les stats de tout les objets de mon jeu (un objet étant ici, un monstre, un joueur, une arme, un item, etc..).
Le joueur doit donc exister dans la table user et dans la table de stat afin d'avoir des points d'attaques/défence,etc....)
J'ai construit ma table user comme cela :
ID,username,password,......
Ici l'ID est en autoIncrement, ce seras l'ID utiliser partout pour lier le joueur.
Sur ma table de stat j'ai :
ID, ENTITY_ID, ENTITY_TYPE.
ID est en autoIncrement, il ne sert pas fonctionnellement dans le jeu. Il est ici uniquement pour respecter l'index unique. (Un objet ne peut avoir qu'une seule valeur pour une stat).
ENTITY_ID reprend ici l'ID de la table user (si on parle d'une stat, ce champs reprendrais l'ID de la table stat, et ainsi de suite)
ENTITY_TYPE détermine s'il s'agit d'un joueur,objet,arme,etc....
Ce qui veux dire que si un nouveau joueur est créée, j'insert la ligne dans ma table user. Je récupère l'ID généré et je l'insert dans toutes mes tables ou le joueur doit être référencé. (ce qui veux dire que je ne tient pas compte du champ ID autoIncrement des autres tables)
Donc pour conclure, de base, le champ ID de toutes mes tables sont en autoIncrement. l'ID des tables de fait (user,monstre,etc...) sert de référence, c'est ce ID qu'on utilise partout. l'ID des tables de dimension (stat, position, inventaire,...) servent de contrainte pour l'index unique.
Je ne sait pas si j'ai était assez clair ou si ça répond à ta question, n'hésite pas à me dire si tu veux plus d'infos