PresenceToggle est une application web PHP/MySQL pour la gestion des présences en milieu scolaire. Les administrateurs peuvent créer des séances et générer des QR codes, tandis que les étudiants scannent ces QR codes pour valider leur présence automatiquement.
- Authentification complète : Inscription, connexion, déconnexion pour admins et étudiants
- Tableau de bord Admin :
- Création de séances de cours
- Liste des séances
- Gestion des présences
- Génération de QR codes pour chaque séance
- Tableau de bord Étudiant :
- Consultation des séances disponibles
- Scan de QR code pour valider la présence
- Historique des présences
- Base de données MySQL : Schéma inclus (
school.sql) - Interface responsive : CSS moderne avec assets dédiés
- Sécurité : Sessions PHP, validation des présences
- Backend : PHP 8.3
- Base de données : MySQL
- Serveur : Apache (WAMP)
- Frontend : HTML5, CSS3, JavaScript
- QR Code : Scanning via webcam (mobile-friendly)
- WAMP64 installé et démarré (Apache + MySQL)
- PHP >= 7.4
- MySQL/MariaDB
- Cloner/Déplacer le projet :
Copiez le dossier PresenceToggle dans `c:/wamp64/www/`
- Importer la base de données :
- Ouvrez phpMyAdmin (http://localhost/phpmyadmin)
- Créez une nouvelle base `school` (ou modifiez `config/database.php`)
- Importez `school.sql`
- Configuration :
Éditez
config/database.phpsi nécessaire :
<?php
$host = 'localhost';
$dbname = 'school';
$username = 'root';
$password = '';
?>- Démarrer :
- Accédez à
http://localhost/PresenceToggle/ - Admin par défaut : Créez un compte admin via register.php
- Étudiant : Inscrivez-vous comme étudiant
- Accédez à
- Connectez-vous →
/admin/dashboard.php - Créez une séance (
create_seance.php) - Générez QR code (
generate.php) - Consultez présences (
presence.php)
- Connectez-vous →
/etudiant/dashboard.php - Scannez QR (
scan_qr.php) - Validez présence (
valider_presence.php)
PresenceToggle/
├── index.php # Page d'accueil
├── login.php # Connexion
├── register.php # Inscription
├── config/
│ └── database.php # Connexion DB
├── admin/ # Panel Admin
│ ├── dashboard.php
│ ├── create_seance.php
│ ├── list_seance.php
│ ├── presence.php
│ └── generate.php
├── etudiant/ # Panel Étudiant
│ ├── dashboard.php
│ ├── scan_qr.php
│ ├── seances.php
│ └── valider_presence.php
├── assets/ # CSS/JS/Images
├── includes/ # Composants communs
└── school.sql # Schéma DB
- Dashboard Admin
- Images disponibles dans
assets/image/
- Erreur DB : Vérifiez
config/database.phpet importezschool.sql - QR ne scanne pas : Autorisez caméra sur HTTPS ou localhost
- Sessions perdues : Vérifiez
includes/auth.php
- Notifications push
- Export PDF des présences
- Multi-école
- App mobile PWA
Projet open-source pour usage éducatif. Modifiez librement !
Auteur : Développé avec ❤️ pour la gestion scolaire moderne Version : 1.0