Le fichier doit contenir une colonne Nom (ou Nom + Prénom) et idéalement une colonne Groupe. Sans colonne Groupe, les participants sont répartis automatiquement en 3 groupes.
| ID | Nom | Groupe |
|---|
Scanner un badge
Scannez avec une douchette (lecteur USB) ou saisissez l'ID du badge puis Entrée. La caméra fonctionne si la page est servie en HTTPS ou via un serveur local.
Autorisations par groupe
Cochez les créneaux autorisés pour chaque groupe. Le contrôle est automatique selon l'heure réelle, uniquement le 11 juillet 2026 : « 09h - 12h » et « 15h - 17h » ne passent que pendant ces créneaux ; « Toute la journée » passe à toute heure du jour J.
| ID | Nom | Groupe | Statut | Heure d'arrivée |
|---|
☁️ Base de données (serveur cPanel)
L'application se connecte automatiquement au fichier api.php hébergé dans le même dossier que la page. Une fois connectée, la liste des participants, les autorisations et les pointages sont partagés entre tous les appareils (téléphones de contrôle, ordinateur…).
- Dans cPanel → Bases de données MySQL : créez une base (ex. monsite_badges)
- Créez un utilisateur MySQL avec un mot de passe, puis ajoutez-le à la base avec « Tous les privilèges »
- Dans le Gestionnaire de fichiers, placez api.php à côté de index.html, puis ouvrez api.php avec « Modifier » et renseignez les 4 lignes en haut (nom de la base, utilisateur, mot de passe)
- Rechargez l'application : le statut doit passer à « ✅ Connectée ». Les tables SQL sont créées automatiquement
Les scans sont synchronisés toutes les 4 secondes entre les appareils. Sans api.php, l'application fonctionne quand même, mais chaque appareil garde ses propres données.
👤 Gestion des utilisateurs
admin : accès général • superviseur : participants, badges, contrôle d'accès, présence • controle : liste des participants (lecture), scan d'accès, présence. Les comptes sont partagés entre les appareils via la base de données.
| Utilisateur | Mot de passe | Rôle |
|---|