Modifications page d'accueil

This commit is contained in:
Vincent TEISSIER 2024-06-03 09:43:40 +02:00
parent 96c879d0f9
commit baae5280b9
5 changed files with 55 additions and 47 deletions
application

@ -49,6 +49,11 @@ defined('BASEPATH') OR exit('No direct script access allowed');
| Examples: my-controller/index -> my_controller/index
| my-controller/my-method -> my_controller/my_method
*/
$route['default_controller'] = 'welcome';
$route['default_controller'] = 'Albums';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
$route['albums'] = 'albums/index';
$route['connect/login'] = 'connect/login';
$route['connect/logout'] = 'connect/logout';
$route['connect/create'] = 'connect/create';

@ -7,12 +7,12 @@ class Connect extends CI_Controller {
{
parent::__construct();
$this->load->model('User_model');
$this->load->library('session');
$this->load->library(['form_validation', 'session']);
$this->load->helper(['url', 'form']);
}
public function create()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('nom', 'Nom', 'required');
$this->form_validation->set_rules('prenom', 'Prénom', 'required');
$this->form_validation->set_rules('email', 'Adresse mail', 'valid_email|required');
@ -32,12 +32,11 @@ class Connect extends CI_Controller {
);
if ($this->User_model->create_user($data)) {
// Redirect to a success page or login page
redirect('connect/login');
} else {
// Handle error
$data['error'] = 'Erreur lors de la création du compte. Veuillez réessayer.';
$this->load->view('layout/header');
$this->load->view('create');
$this->load->view('create', $data);
$this->load->view('layout/footer');
}
}
@ -45,7 +44,6 @@ class Connect extends CI_Controller {
public function login()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email');
$this->form_validation->set_rules('password', 'Password', 'required');
@ -60,14 +58,16 @@ class Connect extends CI_Controller {
$user = $this->User_model->get_user_by_email($email);
if ($user && password_verify($password, $user['password'])) {
// Set session data and redirect to a protected page
$this->session->set_userdata('user_id', $user['id']);
$this->session->set_userdata([
'user_id' => $user['id'],
'email' => $user['email'],
'logged_in' => TRUE
]);
redirect('albums');
} else {
// Handle login error
$data['error'] = 'Adresse email ou mot de passe incorrect';
$this->load->view('layout/header');
$this->load->view('login', $data); // Passer le message d'erreur à la vue
$this->load->view('login', $data);
$this->load->view('layout/footer');
}
}
@ -75,9 +75,7 @@ class Connect extends CI_Controller {
public function logout()
{
$this->session->unset_userdata('user_id');
$this->session->sess_destroy();
redirect('connect/login');
}
}

@ -20,6 +20,6 @@ class Welcome extends CI_Controller {
*/
public function index()
{
$this->load->view('welcome_message');
redirect('albums/index');
}
}

@ -1,21 +1,19 @@
<?php
class User_model extends CI_Model {
public function __construct()
{
public function __construct() {
$this->load->database();
}
public function create_user($data)
{
return $this->db->insert('user', $data);
}
public function get_user_by_email($email)
{
$this->db->where('email', $email);
$query = $this->db->get('user');
public function get_user_by_email($email) {
$query = $this->db->get_where('users', ['email' => $email]);
return $query->row_array();
}
public function create_user($data) {
return $this->db->insert('users', $data);
}
}
?>

@ -1,3 +1,9 @@
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<?= validation_errors(); ?>
<?php if (isset($error)): ?>
@ -17,5 +23,6 @@
<button type="submit">Submit</button>
<?= anchor('connect/create', "Pas de compte ? Créez-en un !"); ?>
</form>
</body>
</html>