Espace membre
Inscription, connexion sécurisée et tableau de bord — table users partagée, sessions PHP, anti force-brute.
Installation & utilisation
Espace membre
Module d’authentification pour votre CMS (marque blanche). Gratuit & open source (MIT).
Prérequis
- CMS WNFO / CMS nu déjà installé (install.php terminé)
- PHP avec sessions activées
- Le cœur CMS doit inclure ModuleRuntime (versions récentes du CMS nu)
Instructions
Pages du module
| URL | Rôle |
|---|---|
/member/register | Inscription (pseudo, email, mot de passe) |
/member/login | Connexion (email ou pseudo) |
/member/logout | Déconnexion |
/member/account | Tableau de bord (réservé aux connectés) |
/member/dashboard | Alias de /member/account |
Base de données
Oui — réutilise la table users du CMS (pas de seconde table dédiée).
| Élément | Détail |
|---|---|
| Table | users (déjà créée par le CMS) |
| Colonne | username (ajoutée par le cœur CMS si besoin) |
| Rôle | nouveaux comptes → member |
| Mot de passe | password_hash (PHP) |
| Session | session membre séparée de l’admin |
Aucune migration SQL manuelle à lancer : le CMS gère la colonne username au démarrage.
Un membre ne peut pas ouvrir l’admin.
Sécurité
- Protection CSRF sur les formulaires
- Limitation des tentatives de connexion (anti force-brute)
- Pages compte protégées : visiteur non connecté → redirection vers
/member/login
Header du thème
Si votre thème appelle render_member_nav() (thème default inclus) :
- Invité → boutons *Connexion* / *Inscription*
- Connecté → *Mon compte* / *Déconnexion*
Sur un thème custom, ajoutez dans le header :
<?php render_member_nav(); ?> Vérification rapide
- Ouvrir
/member/register→ créer un compte test - Vérifier la redirection vers
/member/account - Se déconnecter, puis se reconnecter via
/member/login - Contrôler en Admin → Utilisateurs que le compte apparaît avec le rôle
member
Dans le ZIP
Guide aussi fourni dans le ZIP (INSTALLATION.md). Dossier cible : /modules/member-space/ — n’écrase pas le thème.