Bonjour,

J'ai besoin d'aide concernant une requête que j'intitule comme "dynamique".

Le contexte

La structure de ma table :

Numero_Lot
Type_Lot
Nbre_Doc_Traites
Date_Debut_Traitement

J'ai un formulaire d'appel en html avec des cases à cocher.

J'ai besoin de générer un tableau avec comme intitulé de champ un numéro de région compris dans le "Numero_Lot', la somme de "Nbre_Doc_Traites" par Type de Lot avec comme paramètre une plage de date.

Ma requête se présente sous la forme suivante :

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
SELECT MID(`Numero_Lot`,10,2) AS `Région`
SUM(case when `Type_Lot` = 'Acquittement Upload' then `Nbre_Doc_Traites` else 0 end) AS 'Acquittement Upload',
SUM(case when `Type_Lot` = 'Candidat' then `Nbre_Doc_Traites` else 0 end) AS 'Candidat',
SUM(case when `Courriers europeens` = 'RIB' then `Nbre_Doc_Traites` else 0 end) AS 'Courriers europeens'
FROM `ged_allocataire`
WHERE `Date_Debut_Traitement` BETWEEN '$datedeb_php' AND '$datefin_php'
GROUP BY MID(`Numero_Lot`,10,2)

Je récupère ma plage de date via $_POST et je veux faire de même pour les cases à cocher.

Cependant je ne veux afficher dans mon tableau que les type_lot qui ont été cochés dans le formulaire.

Comment récupérer de façon dynamique en php les cases qui ont été cochées et générer ma requête en conséquence.

Exemple si je décoche Candidat ne générer que :

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT MID(`Numero_Lot`,10,2) AS `Région`
SUM(case when `Type_Lot` = 'Acquittement Upload' then `Nbre_Doc_Traites` else 0 end) AS 'Acquittement Upload',
SUM(case when `Courriers europeens` = 'RIB' then `Nbre_Doc_Traites` else 0 end) AS 'Courriers europeens'
FROM `ged_allocataire`
WHERE `Date_Debut_Traitement` BETWEEN '$datedeb_php' AND '$datefin_php'
GROUP BY MID(`Numero_Lot`,10,2)