重定向

时间:2016-10-08 12:28:22

标签: php codeigniter

我有一个使用CI 3的项目,我使用XAMPP在Windows上的localhost上开发,最终产品部署在Debian Apache服务器上。我试图登录,但它被重定向回默认控制器。

我试图输入错误的登录信息并且正确显示错误,但是当我输入正确的登录信息时,它会一直回到我的登录控制器。

这是我的登录控制器(Auth.php):

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Auth extends CI_Controller {
public function __construct(){
    parent::__construct();
    $this->load->model('user_m');
    if ($this->session->userdata('akses') == 'admin') {
        redirect('dashboard');
    }
    elseif ($this->session->userdata('akses')=='user') {
        redirect('user');
    }
}
public function index() {
    $this->load->view('login_v');

}

public function login() {
    $nip=$this->input->post('nip');
    $password=$this->input->post('password');

    $query = $this->user_m->login($nip);
    if ($query->num_rows()==1)
    {
        $row = $query->row();
        if ($password == $this->bcrypt->check_password($password,$row->password)) {    
            $data_login= array(
            'nip'=>$row->nip,
            'id_pegawai'=>$row->id_pegawai,
            'akses'=>$row->akses
            );
            echo $this->session->set_userdata($data_login);
            $akses = $this->session->userdata('akses');
            if ($akses=='admin') {
                redirect('dashboard');
            }
            elseif ($akses=='user') {
                redirect('user');
            }       
        }
        else {
            echo "<script>alert('Gagal login: Cek nip, password!');history.go(-1);</script>";
        }
    }
    else {
        echo "<script>alert('Gagal login: Cek nip, password!');history.go(-1);</script>";
         }
    }
}
?>

任何人都可以帮助我吗?

更新

当我在重定向后检查会话时,它总是传递一个带有新id会话的空值。即使我试过native session课仍然没有帮助它。

0 个答案:

没有答案