Gestionnaire de cours

PHP MySQL

Description du projet

Le Gestionnaire de cours est une application web développée en PHP et MySQL conçue pour simplifier la gestion des cours et des ressources pédagogiques pour les étudiants et les enseignants.

L'application permet aux utilisateurs de :

  • Voir la listes des étudiants, professeurs, ressources, cours et modules
  • Ajouter des étudiants, des professeurs, desressources, des cours et des modules à la liste
  • Voir en détails les informations
  • Avoir un classement des étudiants

Fonctionnalités principales

  • Authentification des utilisateurs (étudiants et enseignants)
  • Gestion des cours (création, modification, suppression)
  • Classement pour les étudiants selon les modules
  • Interface responsive adaptée aux mobiles et tablettes

Technologies utilisées

Backend

  • PHP 8.0
  • MySQL 8.0
  • Architecture MVC
  • PDO pour les connexions à la base de données

Frontend

  • HTML5 / CSS3
  • JavaScript (vanilla)

Outils de développement

  • LAMPP comme environnement de développement local
  • Visual Studio Code

Défis et solutions

Lors du développement de cette application, plusieurs défis ont été rencontrés :

Gestion des droits d'accès

Un des défis majeurs était de mettre en place un système d'autorisation qui permette de gérer différents niveaux d'accès pour les étudiants, enseignants et administrateurs. La solution a consisté à implémenter un système de rôles basé sur des tokens JWT pour l'authentification.

Optimisation des requêtes SQL

La gestion d'un grand nombre de cours et ressources a nécessité une optimisation des requêtes SQL pour garantir des performances optimales. Des index ont été créés sur les colonnes fréquemment utilisées dans les requêtes et des jointures optimisées ont été mises en place.

Interface utilisateur intuitive

Créer une interface à la fois complète et simple d'utilisation était un défi important. La solution a été de concevoir un design centré utilisateur, avec des tests utilisateurs réguliers pour valider les choix d'interface.

Informations

  • Date: Février 2025
  • Équipe: 1 personnes
  • Projet universitaire (BUT Informatique)
  • Durée: 1 mois