Refactorisation passage à SLQite3 (début)

Pages faites :
- accueil
- statistiques
- ajouterElement
This commit is contained in:
Timothée Huneau 2025-02-23 23:56:23 +01:00
parent c3ab5baad7
commit 90be5dd519
17 changed files with 1224 additions and 412 deletions

View file

@ -1,5 +1,4 @@
<?php
$c = seConnecter();
<?php
//on commence par supposer que tout va mal (que la page reherchée n'existe pas)
$titrePageAjout = '???';
@ -9,9 +8,7 @@ $pageExiste = false;
if (isset($_GET['id'])){
$idRecette = $_GET['id'];
$_SESSION['idDerniereRecetteVu'] = $idRecette;
$requeteId = "SELECT * FROM Recette WHERE id=$idRecette;";
$resultatId = mysqli_query($c, $requeteId);
$infoRecette = mysqli_fetch_assoc($resultatId);
$infoRecette = getRecetteFromId($idRecette);
$pageExiste = ($infoRecette) ? 1 : ( $idRecette ? 0 : -1) ;
if($pageExiste and isset($_GET['mode'])){
switch($_GET['mode']){
@ -92,34 +89,8 @@ if ($pageExiste){
//on recupere toutes les infos sur la recette sélectionnée.
//(elles ont p-ê été modifiés juste avant, mais dans le doute ...)
$requeteRecette =
"SELECT r.nom, r.id idRecette, r.nbPortion portions, u.nom unite, r.realisation, u.id idU, r.tempsTotal tempsTotal, g.nom genre
FROM Recette r JOIN Unite u ON r.unitePortion = u.id JOIN Genre g ON r.genre = g.id
WHERE r.id = $idRecette
ORDER BY nom;
";
$requeteIngredient =
"SELECT ri.ingredient idIngredient, i.nom nom, ri.quantite quantite, u.nom unite, u.id idU
FROM Ingredient i JOIN RecetteIngredient ri ON i.id = ri.ingredient JOIN Unite u ON ri.unite = u.id
WHERE ri.recette = $idRecette
ORDER BY nom;
";
$requeteUstensile = "
SELECT ru.ustensile idUstensile, u.nom nom, ru.commentaire commentaire
FROM Ustensile u JOIN RecetteUstensile ru ON u.id = ru.ustensile
WHERE ru.recette = $idRecette
ORDER BY nom;
";
$requetePreparation = "
SELECT rp.preparation idPreparation, p.nom nom, rp.duree duree, rp.temperature temperature
FROM Preparation p JOIN RecettePreparation rp ON p.id = rp.preparation
WHERE rp.recette = $idRecette
ORDER BY nom;
";
$requeteGenre = "
SELECT g.id idGenre, g.nom nom
FROM Genre g JOIN Recette r ON g.id = r.genre
WHERE r.id = $idRecette;
";
$requeteReutilise = "
SELECT reu.utilisee id, rec.nom nom
@ -128,45 +99,42 @@ if ($pageExiste){
ORDER BY nom;
";
$resultatRecette = mysqli_query($c, $requeteRecette);
$resultatIngredient = mysqli_query($c, $requeteIngredient);
$resultatUstensile = mysqli_query($c, $requeteUstensile);
$resultatPreparation = mysqli_query($c, $requetePreparation);
$resultatGenre = mysqli_query($c, $requeteGenre);
$resultatReutilise = mysqli_query($c, $requeteReutilise);
$infoRecette = getRecetteFullFromId($idRecette);
$infoRecette['tempsTotal'] = $infoRecette['tempsTotal'];
$infoRecette = mysqli_fetch_assoc($resultatRecette);
$infoRecette['tempsTotal'] = calculeTexteFromMinutes($infoRecette['tempsTotal']);
$nomGenre = getGenreWithRecetteId($idRecette)['nom'];
$nomGenre = mysqli_fetch_assoc($resultatGenre)['nom'];
$listeIngredientsRecette = [];
while ($ingredient = mysqli_fetch_assoc($resultatIngredient)){
$listeIngredientsRecette[$ingredient['idIngredient']] = [];
$listeIngredientsRecette[$ingredient['idIngredient']]['nom'] = $ingredient['nom'];
$listeIngredientsRecette[$ingredient['idIngredient']]['quantite'] = $ingredient['quantite'];
$listeIngredientsRecette[$ingredient['idIngredient']]['unite'] = $ingredient['unite'];
$listeIngredientsRecette[$ingredient['idIngredient']]['idU'] = $ingredient['idU'];
$listeIngredientRecetteRaw = getAllIngredientsWithRecetteId($idRecette);
$listeIngredientRecette = [];
foreach ($listeIngredientRecetteRaw as $ingredient){
$listeIngredientRecette[$ingredient['idIngredient']] = [];
$listeIngredientRecette[$ingredient['idIngredient']]['nom'] = $ingredient['nom'];
$listeIngredientRecette[$ingredient['idIngredient']]['quantite'] = $ingredient['quantite'];
$listeIngredientRecette[$ingredient['idIngredient']]['unite'] = $ingredient['unite'];
$listeIngredientRecette[$ingredient['idIngredient']]['idU'] = $ingredient['idU'];
}
$listeUstensilesRecette = [];
while ($ustensile = mysqli_fetch_assoc($resultatUstensile)){
$listeUstensilesRecette[$ustensile['idUstensile']] = [];
$listeUstensilesRecette[$ustensile['idUstensile']]['nom'] = $ustensile['nom'];
$listeUstensilesRecette[$ustensile['idUstensile']]['commentaire'] = $ustensile['commentaire'];
$listeUstensileRecetteRaw = getAllUstensileWithRecetteId($idRecette);
$listeUstensileRecette = [];
foreach ($listeUstensileRecetteRaw as $ustensile){
$listeUstensileRecette[$ustensile['idUstensile']] = [];
$listeUstensileRecette[$ustensile['idUstensile']]['nom'] = $ustensile['nom'];
$listeUstensileRecette[$ustensile['idUstensile']]['commentaire'] = $ustensile['commentaire'];
}
$listePreparationsRecette = [];
while ($preparation = mysqli_fetch_assoc($resultatPreparation)){
$listePreparationsRecette[$preparation['idPreparation']] = [];
$listePreparationsRecette[$preparation['idPreparation']]['nom'] = $preparation['nom'];
$listePreparationsRecette[$preparation['idPreparation']]['duree'] = calculeTexteFromMinutes($preparation['duree']);
$listePreparationsRecette[$preparation['idPreparation']]['temperature'] = $preparation['temperature'];
$litesPreparationRecetteRaw = getAllPreparationWithRecetteId($idRecette);
$listePreparationRecette = [];
foreach ($litesPreparationRecetteRaw as $preparation){
$listePreparationRecette[$preparation['idPreparation']] = [];
$listePreparationRecette[$preparation['idPreparation']]['nom'] = $preparation['nom'];
$listePreparationRecette[$preparation['idPreparation']]['duree'] = $preparation['duree'];
$listePreparationRecette[$preparation['idPreparation']]['temperature'] = $preparation['temperature'];
}
$listeReutiliseeRecetteRaw = getAllReutiliseeWithRecetteId($idRecette);
$listeReutiliseRecette = [];
while ($recette = mysqli_fetch_assoc($resultatReutilise)){
$listeReutiliseRecette[$recette['id']] = $recette;
foreach ($listeReutiliseeRecetteRaw as $key => $value){
$listeReutiliseRecette[$recette['id']] = $value;
}
@ -175,23 +143,20 @@ if ($pageExiste){
switch($pageExiste){
case 1:
$infoRecette['realisation'] = ecritureVersLecture($infoRecette['realisation']);
foreach($listeUstensilesRecette as $ustensile){
foreach($listeUstensileRecette as $ustensile){
$ustensile['commentaire'] = ecritureVersLecture($ustensile['commentaire']);
}
break;
case 2:
$infoRecette['realisation'] = lectureVersEcriture($infoRecette['realisation']);
foreach($listeUstensilesRecette as $id => $ustensile){
$listeUstensilesRecette[$id]['commentaire'] = lectureVersEcriture($listeUstensilesRecette[$id]['commentaire']);
foreach($listeUstensileRecette as $id => $ustensile){
$listeUstensileRecette[$id]['commentaire'] = lectureVersEcriture($listeUstensileRecette[$id]['commentaire']);
}
case -1:
$listeUnite = recupereUnites($c);
$listeGenre = recupereGenres($c);
$listeUnite = getAllUnites();
$listeGenre = getAllGenres();
break;
}
}
deconnectBD($c);
?>