3. Structure détaillée du système
Le système se compose de plusieurs modules structurés pour séparer clairement la logique métier, la présentation et l’accès aux données. Voici une analyse détaillée de la structure attendue :
3.1. Backend – Scripts Fonctionnels
• Connexion à la Base de Données :
Un fichier de configuration centralisé (config.php) définit les paramètres de connexion.
• Gestion des Bons Cadeaux :
Des scripts dédiés aux opérations CRUD (Création, Lecture, Mise à jour, Suppression) pour gérer l’état des bons cadeaux.
• Logique Métier :
Des classes et des méthodes (éventuellement organisées en namespaces selon la norme PSR-4) qui encapsulent les règles de gestion, telles que la validation de l’usage d’un bon, la vérification des dates d’expiration ou le suivi historique des transactions.
3.2. Module d’Authentification et de Gestion des Permissions
• Système de Login Sécurisé :
Un script (login.php) gère l’identification des utilisateurs à l’aide de sessions sécurisées, avec des mécanismes de hashage pour les mots de passe.
• Contrôle d’Accès :
Avant chaque opération critique (consultation, modification du statut d’un bon), des vérifications sont effectuées pour s’assurer que l’utilisateur possède le niveau de permission requis (ex: rôle administrateur vs. caissier).
3.3. Frontend – Interface Web
Pages Principales :
• Dashboard (index.php) : Vue d’ensemble affichant la liste des bons cadeaux avec des indicateurs clairs (actifs, utilisés, expirés).
• Détail d’un Bon Cadeau (ex: voucher_detail.php) : Présente l’historique, les informations détaillées et les options de modification pour chaque bon.
• Formulaires de Validation/Redemption (ex: update_voucher.php) : Permettent aux utilisateurs de changer l’état d’un bon après utilisation.
L’interface doit être intuitive, avec des menus clairs, des filtres de recherche par numéro de bon, date ou statut, et une réactivité adaptée aux différents appareils utilisés en point de vente (ordinateur, tablette, etc.).
4. Gestion de la Base de Données
• Schéma SQL :
Le fichier SQL joint (lgun6998_wp46273.sql) semble contenir la définition des tables liées aux bons cadeaux, aux utilisateurs et aux logs de transactions.
• Interconnexions :
Les clés primaires et étrangères sont utilisées pour établir les relations entre les différentes tables afin d’assurer l’intégrité des données.