How to save and extract session data in codeigniter

后端 未结 6 1838
甜味超标
甜味超标 2020-12-08 14:55

I save some data in session on my verify controller then I extract this session data into user_activity model and insert session data into activity table. My problem is only

相关标签:
6条回答
  • 2020-12-08 15:34

    In codeigniter we are able to store session values in a database. In the config.php file make the sess_use_database variable true

    $config['sess_use_database'] = TRUE;
    $config['sess_table_name'] = 'ci_sessions';
    

    and create a ci_session table in the database

    CREATE TABLE IF NOT EXISTS  `ci_sessions` (
        session_id varchar(40) DEFAULT '0' NOT NULL,
        ip_address varchar(45) DEFAULT '0' NOT NULL,
        user_agent varchar(120) NOT NULL,
        last_activity int(10) unsigned DEFAULT 0 NOT NULL,
        user_data text NOT NULL,
        PRIMARY KEY (session_id),
        KEY `last_activity_idx` (`last_activity`)
    );
    

    For more details and reference, click here

    0 讨论(0)
  • 2020-12-08 15:37

    initialize the Session class in the constructor of controller using

    $this->load->library('session');
    

    for example :

     function __construct()
       {
        parent::__construct();
        $this->load->model('user','',TRUE);
        $this->load->model('user_activity','',TRUE);
        $this->load->library('session');
       }
    
    0 讨论(0)
  • In CodeIgniter you can store your session value as single or also in array format as below:

    If you want store any user’s data in session like userId, userName, userContact etc, then you should store in array:

    <?php
    $this->load->library('session');
    $this->session->set_userdata(array(
    'userId'  => $user->userId,
    'userName' => $user->userName,
    'userContact '  => $user->userContact 
    )); 
    ?>
    

    Get in details with Example Demo :

    http://devgambit.com/how-to-store-and-get-session-value-in-codeigniter/

    0 讨论(0)
  • 2020-12-08 15:46

    First you have load session library.

    $this->load->library("session");
    

    You can load it in auto load, which I think is better.

    To set session

    $this->session->set_userdata("SESSION_NAME","VALUE");
    

    To extract Data

    $this->session->userdata("SESSION_NAME");
    
    0 讨论(0)
  • 2020-12-08 15:50

    CI Session Class track information about each user while they browse site.Ci Session class generates its own session data, offering more flexibility for developers.

    Initializing a Session

    To initialize the Session class manually in our controller constructor use following code.

    Adding Custom Session Data

    We can add our custom data in session array.To add our data to the session array involves passing an array containing your new data to this function.

    $this->session->set_userdata($newarray);
    

    Where $newarray is an associative array containing our new data.

    $newarray = array( 'name' => 'manish', 'email' => 'manish@our-site.com'); $this->session->set_userdata($newarray); 
    

    Retrieving Session

    $session_id = $this->session->userdata('session_id');

    Above function returns FALSE (boolean) if the session array does not exist.

    Retrieving All Session Data

    $this->session->all_userdata()

    I have taken reference from http://www.tutsway.com/codeigniter-session.php.

    0 讨论(0)
  • 2020-12-08 15:52

    You can set data to session simply like this in Codeigniter:

    $this->load->library('session');
    $this->session->set_userdata(array(
        'user_id'  => $user->uid,
        'username' => $user->username,
        'groupid'  => $user->groupid,
        'date'     => $user->date_cr,
        'serial'   => $user->serial,
        'rec_id'   => $user->rec_id,
        'status'   => TRUE
    ));
    

    and you can get it like this:

    $u_rec_id = $this->session->userdata('rec_id');
    $serial = $this->session->userdata('serial');
    
    0 讨论(0)
提交回复
热议问题