Journée d'intégration SIO

Application web de gestion de la journée d'intégration du BTS SIO – Gestion des développeurs, compétences et CRUD complet.

Technologies et Outils

PHP

PHP

MySQL

MySQL

HTML

HTML

CSS

CSS

Git

Git

GitHub

GitHub

MVC

Architecture MVC

DAO

Pattern DAO

Architecture de l'application

Modèle (DAO)

  • BaseDAO.php (classe mère)
  • BaseDeveloppeurDAO.php
  • BaseCompetencesDAO.php
  • Developpeur.php / Competences.php

Contrôleur

  • index.php (routeur principal)
  • gestionDeveloppeurs.php
  • gestionCompetences.php

Vue (templates)

  • accueil.html
  • apropos.php
  • competences.php
  • ajoutDev.php / modifDev.php

Fonctionnalités implémentées

Gestion des développeurs

Consultation, ajout, modification et suppression des développeurs participant à la journée.

Gestion des compétences

Consultation de la liste des compétences du BTS SIO.

Gestion des droits

Utilisateurs spécifiques pour chaque action (DevRead, DevInsert, DevUpdate, DevDelete).

Recherche

Recherche de développeurs par nom, prénom ou type.

Extraits de code

BaseDeveloppeurDAO.php - Méthode getLesDeveloppeurs()
public function getLesDeveloppeurs(): array
{
    // connexion avec droits spécifiques
    $this->setConnexionSelonRole("DevRead");
    
    $requeteAExecuter = "SELECT * FROM Developpeur;";
    $resultatDeLaRequete = $this->query($requeteAExecuter);
    $lesLignes = $resultatDeLaRequete->fetchAll();
    
    $lesLignesObjets = [];
    foreach ($lesLignes as $ligne) {
        $lesLignesObjets[] = new Developpeur(
            (int)$ligne['id'],
            (string)$ligne['nom'],
            (string)$ligne['prenom'],
            (string)$ligne['type']
        );
    }
    return $lesLignesObjets;
}
          
BaseDeveloppeurDAO.php - Méthode ModifierDeveloppeur()
public function ModifierDeveloppeur(Developpeur $dev) : string 
{
    // connexion avec droits d'écriture
    $this->setConnexionSelonRole("DevUpdate");

    $requete = "UPDATE Developpeur SET nom = :nom, prenom = :prenom WHERE id = :id";
    $modification = $this->db->prepare($requete);
    return $modification->execute([
        ":nom" => $dev->getNom(),
        ":prenom" => $dev->getPrenom(),
        ":id" => $dev->getId()
    ]);
}
          

Gestion des droits utilisateurs

CompteRôleActions autorisées
JI_Dev_ReadLectureConsulter la liste des développeurs
JI_Dev_InsertInsertionAjouter un développeur
JI_Dev_UpdateModificationModifier un développeur
JI_Dev_DeleteSuppressionSupprimer un développeur
JI_Comp_ReadLectureConsulter les compétences

Compétences BTS SIO (SLAM)

  • Développer une application web en PHP avec architecture MVC
  • Implémenter le pattern DAO pour l'accès aux données
  • Gérer les droits d'accès avec des utilisateurs spécifiques
  • Utiliser Git pour la gestion de versions
  • Créer des interfaces utilisateur avec HTML/CSS