Aller au contenu
  1. Projets/

BlackArsenal - Site E-commerce PHP MVC

·792 mots·4 mins· ·
Projets Universitaires PHP MVC MySQL E-Commerce Bootstrap
Sommaire
Développement web - Cet article fait partie d'une série.
Partie : Cet article
BlackArsenal est un projet universitaire de site e-commerce développé en PHP avec une architecture MVC, spécialisé dans la vente fictive d’armes de jeux vidéo pour démontrer les compétences en développement web back-end.

Projet Universitaire PHP MVC E-commerce

BlackArsenal - Page d'accueil
Interface d’accueil du site BlackArsenal

Vue d’Ensemble du Projet
#

  1. Contexte Académique

    2024

    Projet Universitaire

    Développement d'un site e-commerce complet dans le cadre d'un cours sur le développement web avec PHP. L'objectif était de maîtriser l'architecture MVC et les concepts de programmation orientée objet.
  2. Architecture MVC

    PHP 7.4+

    Structure Modulaire

    Implémentation d'une architecture Modèle-Vue-Contrôleur propre et maintenable : - **Modèle** : Gestion des données et interaction avec MySQL - **Vue** : Interface utilisateur responsive avec Bootstrap - **Contrôleur** : Logique métier et routage des requêtes
  3. Base de Données

    MySQL

    Structure Relationnelle

    Conception d'une base de données normalisée avec tables relationnelles bien structurées, script de création inclus et données de test pour démonstration immédiate.

Stack Technique
#

PHP 7.4+ - Backend avec orienté objet
MySQL - Base de données relationnelle
Bootstrap 4 - Framework CSS responsive
MVC - Architecture modulaire

Fonctionnalités Principales
#

1. Gestion des Utilisateurs
#

  • Système d’authentification complet avec inscription et connexion
  • Gestion des sessions utilisateurs
  • Profils utilisateurs avec informations personnalisées
  • Système de rôles (administrateur/utilisateur standard)

2. Catalogue de Produits
#

  • Affichage des produits avec pagination
  • Pages détaillées pour chaque produit
  • Système de catégories pour organiser les produits
  • Images et descriptions détaillées
  • Prix et disponibilité en temps réel

3. Interface d’Administration
#

  • CRUD complet (Create, Read, Update, Delete) pour les produits
  • Interface d’ajout de nouveaux produits
  • Modification en ligne des caractéristiques
  • Gestion des stocks et des prix
  • Upload d’images pour les produits

4. Expérience Utilisateur
#

  • Design responsive adapté aux mobiles et tablettes
  • Navigation intuitive avec menu déroulant
  • Recherche et filtrage des produits
  • Interface utilisateur moderne avec Bootstrap

Base de Données
#

La base de données comprend :

  • Schéma complet normalisé et optimisé
  • Tables relationnelles bien structurées
  • Données de test pour les produits et utilisateurs
  • Relations parfaitement intégrées entre les entités

Structure des Tables
#

Base de Données Complète - Structure normalisée avec schéma relationnel et tables optimisées
-- Structure de la base de données BlackArsenal

CREATE TABLE utilisateur(
    id VARCHAR(50),
    nom VARCHAR(50),
    email VARCHAR(50),
    mdp VARCHAR(50),
    PRIMARY KEY(id)
);

CREATE TABLE arme(
    id INT,
    nom VARCHAR(50),
    prix DOUBLE,
    description VARCHAR(200),
    stock INT,
    image VARCHAR(50),
    PRIMARY KEY(id)
);

CREATE TABLE armeCorpsACorps(
    id INT,
    tranchante LOGICAL,
    contondante LOGICAL,
    deLancee LOGICAL,
    poids VARCHAR(50),
    longueur DOUBLE,
    diametre DOUBLE,
    distanceDeLance DOUBLE,
    nbLots INT,
    PRIMARY KEY(id),
    FOREIGN KEY(id) REFERENCES arme(id)
);

CREATE TABLE arme_a_feu(
    id INT,
    modeDeTir VARCHAR(50),
    portee DECIMAL(15,2),
    type VARCHAR(50),
    nbBalles INT,
    typeMunition VARCHAR(50),
    PRIMARY KEY(id),
    FOREIGN KEY(id) REFERENCES arme(id)
);

CREATE TABLE Stand(
    id INT,
    types VARCHAR(50),
    Destructive_Power SMALLINT,
    Speed SMALLINT,
    Range_Of_Manifestation SMALLINT,
    Stamina SMALLINT,
    Precision_Accuracy SMALLINT,
    Development_Potential SMALLINT,
    PRIMARY KEY(id),
    FOREIGN KEY(id) REFERENCES arme(id)
);

CREATE TABLE Commande(
    id INT,
    dateCommande DATE,
    montant DECIMAL(15,2),
    statut VARCHAR(50),
    id_user VARCHAR(50) NOT NULL,
    PRIMARY KEY(id),
    FOREIGN KEY(id_user) REFERENCES utilisateur(id)
);

Architecture des Tables
#

  • Utilisateur : Gestion des comptes utilisateurs et authentification
  • Arme : Catalogue principal avec caractéristiques communes
  • ArmeCorpsACorps : Spécialisation pour armes de mêlée
  • Arme_a_feu : Spécialisation pour armes à distance
  • Stand : Catégorie spéciale d’armes fictives
  • Commande : Système de gestion des commandes

Compétences Démontrées
#

Apprentissages Clés - Maîtrise complète du cycle de développement web avec PHP MVC

Développement Backend
#

  • PHP orienté objet avec classes et héritage
  • Architecture MVC propre et modulaire
  • Base de données avec PDO et requêtes sécurisées
  • Sécurité protection contre injections SQL

Développement Frontend
#

  • HTML5 sémantique bien structuré
  • CSS3 responsive design adaptatif
  • Bootstrap interface professionnelle
  • JavaScript interactions dynamiques

Gestion de Projet
#

  • Code organisé structure maintenable
  • Documentation technique complète
  • Versioning gestion des fichiers

Aspects Pédagogiques
#

graph TD A[Analyse des Besoins] --> B[Conception MVC] B --> C[Modélisation BDD] C --> D[Développement Backend] D --> E[Interface Frontend] E --> F[Tests & Débogage] F --> G[Documentation] B --> H[Séparation des Responsabilités] D --> I[Sécurisation] E --> J[UX/UI Design] F --> K[Bonnes Pratiques]

Ce projet illustre une approche méthodique du développement web :

  • Séparation des responsabilités avec le pattern MVC
  • Bonnes pratiques de développement web professionnel
  • Sécurisation d’une application web complète
  • Intégration frontend/backend harmonieuse
  • Conception d’une base de données relationnelle

Installation et Configuration
#

Prêt à l’emploi - Projet livré avec tous les éléments nécessaires pour un déploiement immédiat

Le projet comprend :

  • Base de données conception et implémentation
  • Configuration simple pour environnement local
  • Documentation technique complète
  • Données de test pour démonstration
Projet Académique - Ce site simule la vente d’armes fictives de jeux vidéo dans un cadre purement éducatif pour démontrer les compétences en développement web.
Portfolio d’Apprentissage - Ce projet illustre concrètement les compétences développées dans mon Portfolio d’Apprentissage BUT 2 : modélisation UML, architecture MVC et conception de bases de données.
PHP
MVC
MySQL
E-commerce
Universitaire
Développement web - Cet article fait partie d'une série.
Partie : Cet article