$ this-> session-> set_userdata () не работает в codeigniter - PullRequest
1 голос
/ 17 февраля 2020

Приложение работает отлично уже более двух лет, только я не могу войти в веб-приложение. Я обнаружил, что $ this-> session-> set_userdata () не работает. Я ввел свои учетные данные, и меня перенаправили обратно на страницу входа. Я попытался использовать оператор set_userdata () и обнаружил, что он не работает. Мой код показан ниже

/* Autoload.php*/
$autoload['libraries'] = array('database', 'email', 'session');
/* Config.php */
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = BASEPATH.'sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;

/* Login Controller */
public function verify_login(){
        $this->load->library('session');
        $pass = $this->input->post('password');
        $username = $this->input->post('username');
        $action = 'Login';
        if($this->admodel->Check_Login_In_DB($username,$pass)){
            $sess_array = array();
            $sess_array = array(
            'uid' =>  $this->admodel->getUidByUsername($username),
            'username' => $username
       );
       $this->session->set_userdata($sess_array);
       $this->admodel->insertLog($action,$this->admodel->getUidByUsername($username));
       redirect(base_url(), 'refresh');
        }else{
        $this->session->set_flashdata('msg','<div style="color:#b94a48;
        background-color:#f2dede;border-color:#eed3d7;height:auto;padding:5px;border-radius:3px;margin-bottom:7px;
        clear:both">The Email and Password Combination is not found in the database,Check Properly and try again !!!</div>');
            redirect(base_url().'login','refresh');
        }

    }

/* Homepage */
public function index(){

        if(!$this->session->userdata('uid')){

            $this->session->set_flashdata('msg','<div style="color: #b94a48;background-color:

            #f2dede;border-color: #eed3d7;height:auto;padding:5px;border-radius:3px;clear:both;margin-bottom:10px">

            You need to signin to continue !!!</div>');

            redirect(base_url().'login','refresh');

        }

1 Ответ

1 голос
/ 17 февраля 2020

Пожалуйста, измените синтаксис сеанса следующим образом.

$this->session->set_userdata('user_session',$sess_array);

Это будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...