ajout gestion des jeux (ajout, modif, suppr) et maj journal séance 3
This commit is contained in:
@@ -89,7 +89,7 @@ $autoload['drivers'] = array();
|
||||
|
|
||||
| $autoload['helper'] = array('url', 'file');
|
||||
*/
|
||||
$autoload['helper'] = array();
|
||||
$autoload['helper'] = array('url','form');
|
||||
|
||||
/*
|
||||
| -------------------------------------------------------------------
|
||||
|
||||
@@ -23,7 +23,7 @@ defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
| a PHP script and you can easily do that on your own.
|
||||
|
|
||||
*/
|
||||
$config['base_url'] = 'https://dwarves.iut-fbleau.fr/~doucoure/sae_r301_gr12/codeigniter-develop/';
|
||||
$config['base_url'] = 'https://dwarves.iut-fbleau.fr/~doucoure/sae_r301_g12/codeigniter-develop/';
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
defined('BASEPATH') OR exit('No direct script access allowed');
|
||||
|
||||
class Jeux extends CI_Controller {
|
||||
|
||||
public function ajouter(){
|
||||
$this->load->helper('url');
|
||||
$this->load->helper('form');
|
||||
$this->load->view("formulaire_ajout");
|
||||
}
|
||||
|
||||
public function sauvegarder() {
|
||||
$this->load->helper('url');
|
||||
$titre = $this->input->post('titre');
|
||||
$annee = $this->input->post('annee');
|
||||
$description = $this->input->post('description');
|
||||
$prix = $this->input->post('prix');
|
||||
|
||||
$this->load->model('Game_model');
|
||||
|
||||
$insertion_reussie = $this->Game_model->ajouter_jeu($titre, $annee, $description, $prix);
|
||||
if ($insertion_reussie) {
|
||||
echo "<h2>Le jeu " . $titre . " a bien été ajouté à la base de données.</h2>";
|
||||
echo "<a href='" . site_url('jeux/ajouter') . "'>Ajouter un autre jeu</a>";
|
||||
} else {
|
||||
echo "<h2>Erreur de la base de données :</h2>";
|
||||
print_r($this->db->error());
|
||||
}
|
||||
}
|
||||
|
||||
public function supprimer($id) {
|
||||
$this->load->model('Game_model');
|
||||
|
||||
$supr = $this->Game_model->supprimer_jeu($id);
|
||||
|
||||
if ($supr) {
|
||||
echo "<h2>Le jeu numéro " . $id . " a bien été supprimé de la base de données !</h2>";
|
||||
} else {
|
||||
echo "<h2>impossible de supprimer le jeu.</h2>";
|
||||
}
|
||||
}
|
||||
|
||||
// 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
|
||||
}
|
||||
|
||||
// On charge la vue en lui passant les infos du jeu
|
||||
$this->load->view('formulaire_ajout', $donnees);
|
||||
}
|
||||
|
||||
public function mettre_a_jour($id) {
|
||||
$titre = $this->input->post('titre');
|
||||
$annee = $this->input->post('annee');
|
||||
$description = $this->input->post('description');
|
||||
$prix = $this->input->post('prix');
|
||||
|
||||
$this->load->model('Game_model');
|
||||
$maj = $this->Game_model->modifier_jeu($id, $titre, $annee, $description, $prix);
|
||||
|
||||
if ($maj) {
|
||||
echo "<h2>Le jeu " . html_escape($titre) . " a bien été modifié.</h2>";
|
||||
echo "<a href='" . site_url('jeux/ajouter') . "'>Retour à l'ajout</a>";
|
||||
} else {
|
||||
echo "<h2>Erreur lors de la modification.</h2>";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -56,6 +56,39 @@ class Game_model extends CI_Model {
|
||||
|
||||
return $query->row_array();
|
||||
}
|
||||
|
||||
public function ajouter_jeu($titre, $annee, $description, $prix) {
|
||||
$donnees = array(
|
||||
'name' => $titre,
|
||||
'releaseYear' => $annee,
|
||||
'shortDescription' => $description,
|
||||
'price' => empty($prix) ? NULL : $prix
|
||||
);
|
||||
return $this->db->insert('game', $donnees);
|
||||
}
|
||||
|
||||
public function supprimer_jeu($id) {
|
||||
return $this->db->delete('game', array('id' => $id));
|
||||
}
|
||||
|
||||
public function get_jeu($id) {
|
||||
$leJeu = $this->db->get_where('game', array('id' => $id));
|
||||
return $leJeu->row_array();
|
||||
}
|
||||
|
||||
public function modifier_jeu($id, $titre, $annee, $description, $prix) {
|
||||
$donnees = array(
|
||||
'name' => $titre,
|
||||
'releaseYear' => $annee,
|
||||
'shortDescription' => $description,
|
||||
'price' => empty($prix) ? NULL : $prix
|
||||
);
|
||||
|
||||
$this->db->where('id', $id);
|
||||
return $this->db->update('game', $donnees);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
<h2><?php echo isset($jeu) ? "Modifier le jeu" : "Ajouter un nouveau jeu"; ?></h2>
|
||||
|
||||
<?php
|
||||
if (isset($jeu)) {
|
||||
// Si modification, on envoie vers la fonction de mise à jour avec l'ID
|
||||
echo form_open('jeux/mettre_a_jour/' . $jeu['id']);
|
||||
} else {
|
||||
// Si ajout, on garde l'ancienne action
|
||||
echo form_open('jeux/sauvegarder');
|
||||
}
|
||||
?>
|
||||
|
||||
<p>
|
||||
<label for="titre">Titre du jeu :</label>
|
||||
<input type="text" name="titre" id="titre" value="<?php echo isset($jeu) ? html_escape($jeu['name']) : ''; ?>" required>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<label for="annee">Année de sortie :</label>
|
||||
<input type="number" name="annee" id="annee" value="<?php echo isset($jeu) ? html_escape($jeu['releaseYear']) : ''; ?>" required>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<label for="description">Description courte :</label><br>
|
||||
<textarea name="description" id="description" rows="4" cols="50" required><?php echo isset($jeu) ? html_escape($jeu['shortDescription']) : ''; ?></textarea>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<label for="prix">Prix (en centimes) :</label>
|
||||
<input type="number" name="prix" id="prix" value="<?php echo isset($jeu) ? html_escape($jeu['price']) : ''; ?>">
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<button type="submit"><?php echo isset($jeu) ? "Mettre à jour" : "Enregistrer"; ?></button>
|
||||
</p>
|
||||
|
||||
</form>
|
||||
Reference in New Issue
Block a user