Ajout des commentaires

This commit is contained in:
stiti
2024-05-25 02:42:52 +02:00
parent de3f0c7cb5
commit f6e0b034e4
5 changed files with 256 additions and 31 deletions

View File

@@ -1,24 +1,32 @@
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Home extends CI_Controller {
public function index() {
public function __construct() {
parent::__construct();
$this->load->library('session');
}
public function index() {
// Charger le modèle
$this->load->model('Cover_model');
$this->load->model('Utilisateur_model');
$this->load->helper('url');
$this->load->helper('html');
// Appeler la fonction pour récupérer les couvertures d'albums
$data['covers'] = $this->Cover_model->get_covers();
// Récupérer les avis récents
$data['avis'] = $this->Utilisateur_model->get_recent_avis();
// Charger la vue avec les données récupérées
$this->load->view('layout/header_dark');
$this->load->view('accueil', $data);
$this->load->view('layout/footer_dark');
}
// Charger le modèle
$this->load->model('Cover_model');
$this->load->helper('url');
$this->load->helper('html');
// Appeler la fonction pour récupérer les couvertures d'albums
$data['covers'] = $this->Cover_model->get_covers();
// Charger la vue avec les données récupérées
$this->load->view('layout/header_dark');
$this->load->view('accueil', $data);
$this->load->view('layout/footer_dark');
}
}
?>
?>

View File

@@ -49,6 +49,67 @@ class Utilisateur extends CI_Controller {
}
}
public function ajouter_avis() {
if(!$this->session->userdata('user_id')) {
redirect('utilisateur/connexion');
}
$this->form_validation->set_rules('commentaire', 'Commentaire', 'required');
$this->form_validation->set_rules('notation', 'Notation', 'required'); // Ajouter une règle de validation pour la notation
if ($this->form_validation->run() == FALSE) {
redirect('/');
} else {
$data = array(
'utilisateur_id' => $this->session->userdata('user_id'),
'commentaire' => $this->input->post('commentaire'),
'notation' => $this->input->post('notation') // Récupérer la valeur de notation depuis le champ caché
);
if ($this->Utilisateur_model->insert_avis($data)) {
$this->session->set_flashdata('success', 'Avis ajouté avec succès.');
} else {
$this->session->set_flashdata('error', 'Une erreur est survenue. Veuillez réessayer.');
}
redirect('/');
}
}
public function supprimer_avis($avis_id) {
// Vérifiez d'abord si l'utilisateur est connecté
if (!$this->session->userdata('user_id')) {
$this->session->set_flashdata('error', 'Vous devez être connecté pour supprimer un avis.');
redirect('utilisateur/connexion');
}
// Vérifiez si l'avis existe
$avis = $this->Utilisateur_model->get_avis($avis_id);
if (!$avis) {
$this->session->set_flashdata('error', 'L\'avis que vous essayez de supprimer n\'existe pas.');
redirect('/');
}
// Vérifiez si l'avis appartient à l'utilisateur connecté
if ($avis->utilisateur_id != $this->session->userdata('user_id')) {
$this->session->set_flashdata('error', 'Vous n\'êtes pas autorisé à supprimer cet avis.');
redirect('/');
}
// Supprimez l'avis
if ($this->Utilisateur_model->supprimer_avis($avis_id)) {
$this->session->set_flashdata('success', 'Avis supprimé avec succès.');
} else {
$this->session->set_flashdata('error', 'Une erreur est survenue lors de la suppression de l\'avis.');
}
redirect('/');
}
public function connexion(){
// Définir les règles de validation
$this->form_validation->set_rules('email', 'Email', 'required|valid_email');