在会话变量

时间:2017-08-19 10:25:02

标签: codeigniter session

我通过codeigniter控制器函数中的ajax发布值,并试图在会话中存储值

function abc{
$studio = $_POST['studio'];
$trnr_type = $_POST['trnrtyp'];
$this->session->set_userdata('studio',$studio),$this->session->set_userdata('trnr_type',$trnr_type)
}

并使用此值

$st = $this->session->userdata('studio');
$tr = $this->session->userdata('trnr_type');

但没有获得会话变量的值。

5 个答案:

答案 0 :(得分:2)

通过以下

将会话库加载到控制器中
$this->load->library('session');

然后你必须将数据发布到codeigniter控制器 然后在控制器上你必须做以下

$sess_array = array(
                  'studio' => $this->input->post('studio'),
                  'trnr_type' => $this->input->post('trnrtyp'),
                   );
$this->session->set_userdata('studio',$sess_array);

答案 1 :(得分:0)

//set user data
$this->session->set_userdata('username',$username);


//get user data
if($this->session->has_userdata('username'))
{
    $userid = $this->session->userdata('username');

}

希望这就是你要找的东西

答案 2 :(得分:0)

调用abc函数加载sesion库之前

function abc() {
   $session = array('studio'=>$_POST['studio'],'trnr_type'=>$_POST['trnrtyp']);
   $this->session->set_userdata($session);
}

答案 3 :(得分:0)

<强> 1。将会话库加载到控制器中:

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

<强> 2。获取您的数据:

$studio = $this->input->post('studio'); 
$trnrtyp = $this->input->post('trnrtyp');

第3。设置会话数据:

$this->session->set_userdata('studio', $studio); 
$this->session->set_userdata('trnrtyp ', $trnrtyp );

<强> 4。获取会话数据:

$st = $this->session->userdata('studio');
$tr = $this->session->userdata('trnr_type');

答案 4 :(得分:0)

这是用户指南所说的

http://www.codeigniter.com/user_guide/libraries/sessions.html#adding-session-data

public function abc() {

    $sessiondata = array(
        'studio' => $this->input->post('studio'),
        'trnrtyp' => $this->input->post('trnrtyp')
    );

    $this->session->set_userdata($sessiondata);
}

确保您已在config.php上设置会话保存路径,不要将其保留为空