dans le cadre de la crise sanitaire, j'essaie de mettre en place un planning de réservations pour les adhérents (club de badminton), afin que chacun puisse venir jouer.
J'ai fait un petit site avec un espace membre.
J'ai donc au total 3 tables dans ma base de données :
- table MEMBRE : idmembre, pseudo
- table RESERVDATE : iddate, date, date2, nbjoueurs (le champs date affiche la date aaaa-mm-jj, le champs date2 en texte : Lundi 17 août 2020)
- table RESERVATIONS : idreserv, iddate, idmembre (où iddate est le même que dans la table RESERVDATE, et idmembre est le même que dans la table MEMBRE)
CAS CONCRET :
Les dates ne peuvent accueillir que le nombre de joueurs prévu dans la table RESERVDATE (soit 15 joueurs par exemple) (impossibilité de s'inscrire si le nombre max est atteint)
Un joueur ne peut réserver qu'une seule date (jusqu'à ce que cette date soit passée) (exemple, il peut s'inscrire pour le Lundi 17 août 2020, mais ne pourra se réinscrire à une autre date qu'à partir du 18 août)
Un joueur doit pouvoir annuler son inscription.
AFFICHAGE CONCRET
(cas 1 : le membre ne s'est pas encore inscrit)
Lundi 17 aôut 2020 (Inscrits : 1/15) - M'INSCRIRE
Mercredi 19 aôut 2020 (Inscrits : 15/15) - COMPLET
Lundi 24 aôut 2020 (Inscrits : 1/15) - M'INSCRIRE
Mercredi 26 aôut 2020 (Inscrits : 1/15) - M'INSCRIRE
Lundi 31 aôut 2020 (Inscrits : 1/15) - M'INSCRIRE
Mercredi 2 septembre 2020 (Inscrits : 1/15) - M'INSCRIRE
(cas 2 : le membre est inscrit à une date)
Lundi 17 aôut 2020 (Inscrits : 1/15)
Mercredi 19 aôut 2020 (Inscrits : 15/15) - COMPLET
Lundi 24 aôut 2020 (Inscrits : 1/15)
Mercredi 26 aôut 2020 (Inscrits : 1/15)
Lundi 31 aôut 2020 (Inscrits : 1/15) - INSCRIT : Annuler mon inscription
Mercredi 2 septembre 2020 (Inscrits : 1/15)
Techniquement je sais afficher la liste des dates avec la requete :
Code : Tout sélectionner
$datedujour=date("Y-m-d");
$req='SELECT * FROM reservdate WHERE date > "'.$datedujour.'" LIMIT 6';
$result=mysqli_query($bdd,$req) or die ('requete impossible');
while($list= mysqli_fetch_array($result,MYSQLI_BOTH))
Merci d'avance pour votre aide.
Eric