Salut!
Je suis en ce moment sur un projet de site web pour mes élèves. Un site qui propose des exercices de français, math, ... Le projet avance bien mais là je bloque. Pour motiver les troupes, je souhaite créer un système d'achievements ou de badges à débloquer (par exemple lorsque l'on fait tel score avec tel temps à tel exercice, ou que l'on s'est connecté plus de 50, ou encore que l'on a obtenu plus de 10 badges, etc.).
Pour cela, je compte créer deux tables:
* tbl_badges * --> Cette table contiendra tous les badges et comment les obtenir en gros.
-id
-name
-description
-condition_type (par exemple l'id d'un exercice, ou des mots-clés comme "connexion" ou autre)
-condition_nb (le score à faire pour débloquer le badge ou le nombre de connexions nécessaire par exemple)
-condition_time (le temps minimum pour débloquer le badge)
* tbl_badges_users * --> Une ligne signifie que le badge n°x a été débloqué par l'utilisateur n°y
-id_badge
-id_user
Mon problème est donc le suivant: comment garder en mémoire chaque action des utilisateurs? Il faut que je stocke tout un tas de statistiques pour chaque utilisateur: quels exercices ont été faits, avec quel score, avec quel temps, le nombre de connexions, etc. Et je ne vois pas comment créer cette table (que je pourrais appeler tbl_stats). D'ailleurs, une seule table suffit-elle? Cette table me servira aussi pour remplir une page de données statistiques que l'utilisateur pourra consulter.
Elle devra peut-être être dynamique car je vais ajouter des exercices au fur à mesure du temps.
Des idées? Merci!
---------------
----** Mon feed-back **----