CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP]Modélisation d'un quizz

Ryner-Lutte
Ryner-Lutte
Niveau 6
08 janvier 2015 à 19:07:37

Bonsoir à tous, dans le cadre d'un projet PHP, on nous a imposé de faire le projet suivant :

Un site de quizz en ligne. L'objectif est d'avoir des quizz répartis dans différentes catégories. Ces quizz comprennent des questions, ainsi que des réponses possibles.

Les utilisateurs pourront ajouter de nouveaux quizz, ainsi que participer à des quizz. Lors d'une participation à un quizz, 20 questions seront tirées aléatoirement, auxquelles l'utilisateur devra répondre jusqu'au bout afin de valider son quizz (il n'a pas le droit de commencer un nouveau quizz tant qu'un quizz est encore actif, il lui faudrait abandonner le quizz). Son score est alors enregistré, et présenté dans un "hall of fame" sur chaque quizz. Bien évidemment, le créateur d'un quizz ne doit pas être cité dans ce hall of fame.

Les quizz peuvent être triés de différentes manières : recherche sur leur titre / description, par catégorie, par popularité totale ou par popularité sur les 30 derniers jours...

Avant d'être soumis sur le site, les quizz doivent passer par la censure d'un administrateur, qui peut refuser leur affichage tant que certains éléments n'auront pas été corrigés. Il faut dont prévoir un système de notifications qui permette à un créateur de quizz de savoir pourquoi un quizz est refusé, et de le resoumettre une fois les problèmes résolus.

Pareil pour les éventuelles modifications que voudrait apporter le créateur d'un quizz : elles devront être validées.

Un quizz pourra être ajouté aux favoris d'un utilisateur, et la page profil d'un utilisateur devra mentionner ses quizz favoris ainsi que la note moyenne des meilleurs scores de quizz obtenus pour chaque catégorie (s'il a participé à plusieurs quizz d'une catégorie, on récupère chacune des meillleures notes qu'il a obtenues sur ces quizz et on en fait la moyenne).

-------
Pour ce qui est de la modélisation (MCD etc), je me suis confronté à certains problèmes : Je me doute bien que les questions/réponses seront dans une table distincte, mais comment faire pour stocker l'ensemble et pouvoir faire l'association lors de l'affichage ?
Je pensais à quelque chose du style [idQues, idAut ou nomAut, thème, rep1, rep2, rep3, rep4] mais je ne sais pas du tout si c'est conceptuellement bon ou pas.
Pour le score, est-il stocké dans la table de l'utilisateur ? genre User [idUser, login, mdp, score]...

rangerprice
rangerprice
Niveau 10
08 janvier 2015 à 23:39:45

Tu peux stocker les réponses dans la même table que les questions ou alors tu peux, pour la table des questions, ajouter une colonne "idReponse" dans laquelle tu stocke l'id de la réponse...:hap:

Pour la table de l'utilisateur, personnellement, j'aime bien séparé les informations de connexion, des informations moins importantes telle que le score etc. Vu que tu n'a pas besoin du mot de passe ni du login pour afficher le score, alors tu pourrais le stocker dans une autre table...:hap:

Ryner-Lutte
Ryner-Lutte
Niveau 6
13 janvier 2015 à 17:00:50

Merci pour ta réponse ! Bon j'ai beaucoup bossé là dessus ces derniers jours et j'en arrive à un MCD qui ressemble à quelque chose :
http://i.imgur.com/yiPF3Li.png

J'ai un tout petit problème lié aux favoris d'un utilisateur : Un utilisateur possède plusieurs favoris (un favori est un quizz) et un favori est utilisé par plusieurs utilisateurs, certes.
Mon problème principal est que mon prof me dit de gérer les favoris d'un utilisateur avec une table de jonction... Mais je ne sais pas si il faut créer une table favoris avec une colonne nom (et d'autres choses)
Ou si il faut juste ajouter un attribut nomQuizz dans ma table de jonction qui lie utilisateur et quizz (comme je le fais pour la popularité dans cette même table de jonction ?)
Merci d'avance pour votre réponse ! :hap:

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment