Cześć, mam problem z logowaniem, strona nie wyświetla żadnych błędów, a po poprawnym zalogowaniu nie przenosi do podanej strony. Oto mój kod:
strona logowania:
<?php include APPPATH. "views/page/small-header.php"; ?>
<div class="blank">
<div class="blank-page">
<div class="container">
<?php echo $this->session->flashdata('message'); ?>
<?php echo form_open('Main/login', 'class="form-signin"'); ?>
<h1 class="h3 mb-3 font-weight-normal">Zaloguj się do systemu</h1>
<label for="email" class="sr-only">Podaj adres email</label>
<input type="email" id="email" name="email" class="form-control col-md-6" placeholder="Podaj adres email" value="<?php echo set_value('email'); ?>" required autofocus>
<?php echo form_error('email', '<div class="help-block text-right"', '</div>') ?>
<label for="password" class="sr-only">Podaj hasło</label>
<input type="password" id="password" name="password" class="form-control" placeholder="Podaj hasło" required>
<?php echo form_error('password', '<div class="help-block text-right"', '</div>') ?>
<button class="btn btn-lg btn-primary btn-block" type="submit">Zaloguj się</button>
<?php echo form_close(); ?>
</div>
</div>
</div>
</div>
<?php include APPPATH. "views/page/footer.php"; ?>
oraz kod w main.php, w którym jest zdefiniowana funkcja loguj():
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Main extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('login-page');
}
public function dashboard()
{
$this->load->view('dashboard');
if ( ! $this->session->userdata('logged_in') ) {redirect('main'); }
}
public function login()
{
$this->form_validation->set_rules('email', 'Adres email', 'trim|required|valid_email');
$this->form_validation->set_rules('password', 'Hasło', 'trim|required|sha1');
if ( $this->form_validation->run() == FALSE)
{
$this->load->view('login-page');
}else{
$email = $this->input->post('email');
$password = $this->input->post('password');
$where = array('email' => $email);
$this->load->model('users_model');
$user = $this->users_model->login('users', $where);
if (!empty($user) )
{
if ( $password == $user->password){
$data_login = array(
'id' => $user->id,
'username' => $user->username,
'firstname' => $user->firstname,
'lastname' =>$user->lastname,
'addate' => $user->addate,
'status' => $user->status,
'logged_in' =>TRUE,
);
$this->session->set_userdata($data_login);
$data = $this->session->set_flashdata('message', '<div class="alert alert-success"> Zalogowałeś się poprawnie</div>');
redirect('main/dashboard', $data);
refresh();
}else{
$data = $this->session->set_flashdata('message', '<div class="alert alert-error"> Podane hasło jest nieprawidłowe </div>');
redirect('main/login', $data);
refresh();
}
}else{
$data = $this->session->set_flashdata('message', '<div class="alert alert-error"> Podany email nie istnieje w bazie danych </div>');
redirect('main/login', $data);
refresh();
}
}
}
public function logout()
{
$this->session->sess_destroy();
$data = $this->session->set_flashdata('message', '<div class="alert alert-error"> Zostałeś wylogowany poprawnie </div>');
redirect('main/index', $data);
refresh();
}
}
Czy ktoś może wie dlaczego po zalogowaniu, nie jestem kierowana na stronę główną?