La Nuit des Purges

Un escape game grandeur nature se joue en équipe : les joueurs devaient pouvoir s'inscrire et former leur équipe seuls, et les organisateurs identifier chacun à l'entrée. J'ai développé toute la plateforme de réservation.

Juin 2026 SAÉ · IUT de Troyes Projet d'équipe Tout le développement
Captures à venir

Le besoin

La Nuit des Purges est un événement de type escape game grandeur nature, imaginé dans le cadre d'une SAÉ en équipe à l'IUT de Troyes. Comme on y joue par équipes, l'inscription ne pouvait pas se résumer à un simple formulaire de contact.

Deux publics avaient des besoins différents : les participants voulaient s'inscrire, constituer leur équipe et obtenir leur billet sans passer par un organisateur ; les organisateurs voulaient savoir qui vient, dans quelle équipe, et pouvoir identifier chaque participant le jour de l'événement.

La solution

Une plateforme de réservation complète. Dans l'équipe, j'ai pris en charge tout le développement :

Mes choix techniques

Des règles d'équipe vérifiées côté serveur

Taille maximale d'une équipe, joueur déjà inscrit ailleurs : chaque règle est contrôlée en PHP avant d'enregistrer quoi que ce soit. Une vérification faite uniquement dans le navigateur peut être contournée ; seul le serveur fait foi.

une validation uniquement en JavaScript, côté navigateur.

Un billet PDF avec QR code

Un billet par participant, à imprimer ou à garder sur son téléphone, que les organisateurs peuvent identifier en scannant le QR code à l'entrée.

une simple liste de noms à cocher le jour J.

PHP natif et MySQL, sans framework

C'était la stack travaillée ce semestre. Elle m'a obligé à gérer moi-même les sessions, les requêtes et la sécurité, et donc à comprendre ce qu'un framework fait à ma place.

un framework comme Symfony, ce que je choisirais aujourd'hui (voir plus bas).

La difficulté principale

Problème

La gestion des équipes. Une équipe ne doit pas dépasser sa taille maximale et un joueur ne peut pas être inscrit dans deux équipes. Sans contrôle, les données deviennent vite incohérentes.

Résolution

J'ai centralisé ces règles côté serveur : avant chaque inscription ou ajout à une équipe, le PHP vérifie la taille de l'équipe et l'inscription existante du joueur, et refuse l'action si une règle n'est pas respectée.

Ce que je referais autrement

Ce que j'ai appris

Règles métier côté serveur
Le navigateur n'est pas une garantie : toute règle importante doit être revérifiée par le serveur avant d'écrire en base.
Générer des documents
Produire dynamiquement un PDF et un QR code en PHP, à partir des données de chaque participant.
Seul dev de l'équipe
Être responsable de tout le développement dans un projet d'équipe : prioriser les fonctionnalités et livrer une plateforme utilisable pour l'événement.

Stack technique

Technologies et outils utilisés :

PHP MySQL JavaScript HTML / CSS

Captures d'écran