CanisPro Éducation

Application web complète pour la gestion d'un centre d'éducation canine. Développée en équipe de 3 développeurs.

Technologies et Outils

Symfony

Symfony

PHP

PHP

MySQL

MySQL

HTML

HTML

CSS

CSS

Git

Git

GitHub

GitHub

Contexte & Objectifs

Le projet vise à remplacer la gestion manuelle (papier/tableurs) du centre d'éducation canine « CanisPro Éducation » par une solution moderne, sécurisée et professionnelle. L'objectif est de centraliser les informations, optimiser l'organisation des activités et faciliter la communication entre clients et éducateurs.

Architecture & Outils

Langages & Stack

HTML/CSS, PHP, SQL – Modélisation relationnelle (Merise) et base MySQL.

Travail d'équipe

Utilisation de Git/GitHub pour la collaboration à plusieurs développeurs.

Architecture MVC

Structure modulaire avec séparation des couches (Modèle, Vue, Contrôleur).

Interface Utilisateur

Accueil - Page d'accueil CanisPro

Page d'accueil

Page moderne présentant les catégories de cours (Obéissance, Agility, Socialisation) et les statistiques de l'école.

Catalogue des cours CanisPro

Catalogue des cours

Affichage dynamique des cours disponibles : niveau, description, date, places restantes, tarif. Réservation en un clic.

Connexion CanisPro

Espace authentification

Formulaire de connexion sécurisé pour propriétaires et administrateurs.

Tableau de bord CanisPro

Tableau de bord

Suivi des chiens, progression, cours à venir, formulaire d'ajout de nouveaux compagnons.

Extrait de code (PHP)

getChiensByClient() - Récupération des chiens
  /**
   * Récupère la liste des chiens associés à un client spécifique
   * @param int $idClient Identifiant du client
   * @return array Liste des chiens
   */
  public function getChiensByClient($idClient) {
      try {
          $sql = "SELECT * FROM Chien WHERE id_client = :id";
          $stmt = $this->db->prepare($sql);
          $stmt->bindParam(':id', $idClient, PDO::PARAM_INT);
          $stmt->execute();
          
          return $stmt->fetchAll(PDO::FETCH_ASSOC);
      } catch(PDOException $e) {
          error_log("Erreur SQL : " . $e->getMessage());
          return [];
      }
  }
        

Modélisation de la base de données (Merise)

Entités principales : Client, Chien, Cours, Réservation, Paiement, Éducateur

Client (id, nom, email, tel, mdp) Chien (id, nom, race, age, id_client) Cours (id, titre, description, date, prix, places_max) Réservation (id, id_client, id_cours, date_reservation, statut)

Compétences BTS SIO (SLAM)

  • Concevoir et développer une application web complète (PHP/MySQL)
  • Modéliser une base de données relationnelle avec Merise
  • Collaborer en équipe avec Git/GitHub
  • Sécuriser les accès avec authentification et sessions
  • Développer une interface utilisateur responsive et ergonomique