diff --git a/codeigniter-develop/application/controllers/Jeux.php b/codeigniter-develop/application/controllers/Jeux.php
index bbd2b1f..a1a3d52 100644
--- a/codeigniter-develop/application/controllers/Jeux.php
+++ b/codeigniter-develop/application/controllers/Jeux.php
@@ -19,43 +19,21 @@ class Jeux extends CI_Controller {
$this->load->model('Game_model');
$insertion_reussie = $this->Game_model->ajouter_jeu($titre, $annee, $description, $prix);
+
if ($insertion_reussie) {
- echo "
Le jeu " . $titre . " a bien été ajouté à la base de données.
";
- echo "Ajouter un autre jeu";
+ $donnees['titre_message'] = "Succès !";
+ $donnees['contenu_message'] = "Le jeu " . html_escape($titre) . " a bien été ajouté à la base de données.";
+ $donnees['lien_retour'] = 'jeux/ajouter';
} else {
- echo "Erreur de la base de données :
";
- print_r($this->db->error());
- }
- }
-
- public function supprimer($id) {
- $this->load->model('Game_model');
-
- $supr = $this->Game_model->supprimer_jeu($id);
-
- if ($supr) {
- echo "Le jeu numéro " . $id . " a bien été supprimé de la base de données !
";
- } else {
- echo "impossible de supprimer le jeu.
";
- }
- }
-
- // 1. Affiche le formulaire pré-rempli
- public function modifier($id) {
- $this->load->model('Game_model');
-
- // On récupère les infos du jeu
- $donnees['jeu'] = $this->Game_model->get_jeu($id);
-
- // Si le jeu n'existe pas, on arrête tout
- if (empty($donnees['jeu'])) {
- show_404(); // Affiche la page d'erreur 404 de CodeIgniter
+ $donnees['titre_message'] = "Erreur";
+ $donnees['contenu_message'] = "impossible d'ajouter le jeu.";
+ $donnees['lien_retour'] = 'jeux/ajouter';
}
- // On charge la vue en lui passant les infos du jeu
- $this->load->view('formulaire_ajout', $donnees);
+ $this->load->view('message_vue', $donnees);
}
+
public function mettre_a_jour($id) {
$titre = $this->input->post('titre');
$annee = $this->input->post('annee');
@@ -63,13 +41,58 @@ class Jeux extends CI_Controller {
$prix = $this->input->post('prix');
$this->load->model('Game_model');
- $maj = $this->Game_model->modifier_jeu($id, $titre, $annee, $description, $prix);
+ $succes = $this->Game_model->modifier_jeu($id, $titre, $annee, $description, $prix);
- if ($maj) {
- echo "Le jeu " . html_escape($titre) . " a bien été modifié.
";
- echo "Retour à l'ajout";
+ if ($succes) {
+ $donnees['titre_message'] = "Succès !";
+ $donnees['contenu_message'] = "Le jeu " . html_escape($titre) . " a bien été modifié.";
+ $donnees['lien_retour'] = 'jeux/modifier/' . $id;
} else {
- echo "Erreur lors de la modification.
";
+ $donnees['titre_message'] = "Erreur";
+ $donnees['contenu_message'] = "Erreur lors de la modification du jeu.";
+ $donnees['lien_retour'] = 'jeux/modifier/' . $id;
}
+
+ $this->load->view('message_vue', $donnees);
}
+
+
+ public function supprimer($id) {
+ $this->load->model('Game_model');
+ $succes = $this->Game_model->supprimer_jeu($id);
+
+ if ($succes) {
+ $donnees['titre_message'] = "Succès !";
+ $donnees['contenu_message'] = "Le jeu numéro " . $id . " a bien été supprimé de la base de données.";
+ $donnees['lien_retour'] = 'jeux/ajouter';
+ } else {
+ $donnees['titre_message'] = "Erreur";
+ $donnees['contenu_message'] = "Aïe, impossible de supprimer le jeu.";
+ $donnees['lien_retour'] = 'jeux/ajouter';
+ }
+
+ $this->load->view('message_vue', $donnees);
+ }
+
+ public function modifier($id) {
+ $this->load->model('Game_model');
+
+ $donnees['jeu'] = $this->Game_model->get_jeu($id);
+
+ if (empty($donnees['jeu'])) {
+ show_404();
+ }
+
+ $this->load->view('formulaire_ajout', $donnees);
+ }
+
+ public function lister($tri = 'name') {
+ $this->load->model('Game_model');
+
+ $donnees['jeux'] = $this->Game_model->get_tous_les_jeux($tri);
+
+ $this->load->view('liste_jeux_vue', $donnees);
+ }
+
+
}
diff --git a/codeigniter-develop/application/models/Game_model.php b/codeigniter-develop/application/models/Game_model.php
index 41b626b..61a502c 100644
--- a/codeigniter-develop/application/models/Game_model.php
+++ b/codeigniter-develop/application/models/Game_model.php
@@ -88,6 +88,20 @@ class Game_model extends CI_Model {
return $this->db->update('game', $donnees);
}
+ public function get_tous_les_jeux($critere_tri = 'id') {
+ $tris_autorises = array('id', 'name', 'releaseYear', 'price');
+
+ if (!in_array($critere_tri, $tris_autorises)) {
+ $critere_tri = 'id';
+ }
+
+ $this->db->order_by($critere_tri, 'ASC');
+
+ $query = $this->db->get('game');
+
+ return $query->result_array();
+ }
+
}
diff --git a/codeigniter-develop/application/views/liste_jeux_vue.php b/codeigniter-develop/application/views/liste_jeux_vue.php
new file mode 100644
index 0000000..776d785
--- /dev/null
+++ b/codeigniter-develop/application/views/liste_jeux_vue.php
@@ -0,0 +1,15 @@
+Liste des jeux
+
+Trier par :
+ Titre (A-Z) |
+ Année de sortie
+
+
+
\ No newline at end of file
diff --git a/codeigniter-develop/application/views/message_vue.php b/codeigniter-develop/application/views/message_vue.php
new file mode 100644
index 0000000..53579f9
--- /dev/null
+++ b/codeigniter-develop/application/views/message_vue.php
@@ -0,0 +1,7 @@
+
+
+
+
+
+ Retour
+
\ No newline at end of file