From a7d5435732aee60f2f33c2d6dfece5fe64d75e27 Mon Sep 17 00:00:00 2001 From: Table <romain.drouin@ensiie.fr> Date: Thu, 5 May 2016 14:38:38 +0200 Subject: [PATCH] ajout de la demande des image pour un jeu --- app/controller/JeuController.php | 22 +++++++++++++++++++--- app/view/Jeu/displayFormAdd.html | 3 ++- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/app/controller/JeuController.php b/app/controller/JeuController.php index 4aab222..85689c7 100644 --- a/app/controller/JeuController.php +++ b/app/controller/JeuController.php @@ -1,4 +1,5 @@ <?php +include(ROOT."/Image.php"); class JeuController extends Controller { public function display() { @@ -30,9 +31,24 @@ class JeuController extends Controller { $result = Jeu::checkExists($data['slug_jeu']); // vérifie si le jeu n'est pas encore dans la BDD if($result == 0) { // connexion valide - Jeu::addRequest($data['nom'], $data['description'], $data['slug_jeu'], 0);// on ajoute le jeu à la BDD avec - header('Location:requestvalid'); // on redirige vers la page OK - } + if(isset($_FILES['image'])) { + list($err, $image) = getImage($_FILES['image'], 512, 512); + if ($err == 0) { + saveImage($image, ROOT."/www/images/jeu/".$data['slug_jeu'].".jpg"); + } else { + session_start(); // on démarre une session pour avoir accès aux variables superglobales de session + $_SESSION["addRequestErrCode"] = $err; // on stocke le code d'erreur + header('Location:../addjeu'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne) + die(); + } + Jeu::addRequest($data['nom'], $data['description'], $data['slug_jeu'], 0);// on ajoute le jeu à la BDD avec + header('Location:requestvalid'); // on redirige vers la page OK + } else { + session_start(); // on démarre une session pour avoir accès aux variables superglobales de session + $_SESSION["addRequestErrCode"] = 2; // on stocke le code d'erreur + header('Location:../addjeu'); // on redirige vers la page de formulaire (il faut faire un retour dans le dossier parent pour que ça fonctionne) + } + } else { session_start(); // on démarre une session pour avoir accès aux variables superglobales de session $_SESSION["addRequestErrCode"] = $result; // on stocke le code d'erreur diff --git a/app/view/Jeu/displayFormAdd.html b/app/view/Jeu/displayFormAdd.html index 4c8dc20..f50da94 100644 --- a/app/view/Jeu/displayFormAdd.html +++ b/app/view/Jeu/displayFormAdd.html @@ -13,9 +13,10 @@ <article> <h2>Formulaire de demande d'ajout de jeu</h2> <div class="addjeu-form"> - <form method="post" action="addjeu/addrequest"> + <form method="post" action="addjeu/addrequest" enctype="multipart/form-data"> <label for="nom">Nom du jeu :</label> <input type="text" name="nom" required="" id="nom" /> <br/> <label for="description">Description :</label> <textarea name="description" id="description" ></textarea> <br/> + <label for="image">Image du jeu: </label> <input type="file" required="" name="image" id="image" /><br/> <div class="submit"> <input type="reset" name="reset" value="Réinitialiser"> <input type="submit" name="submit" value="Demander l'ajout"> -- GitLab