codeigniter中的会话更新

时间:2011-05-26 03:03:21

标签: php session codeigniter

嗨我想询问是否可以更新codeigniter中保存在数据库中的会话数据。我有一个会话userdata(roleID,name,logged_in),所以当有人登录时,生病只需调用$data['name'] = $this->session->userdata('name');并在我的标题视图中以<?php echo $name; ?>回显它,问题是当用户将更新他的名字或姓氏,当我这样做时

$fname = $this->input->post('fname');
$lname = $this->input->post('lname');

$fullname = $fname." ".$lname;
$this->session->unset_userdata('name');
$this->session->set_userdata('name',$fullname);

它不起作用..

//修改 正在工作......只是TYPO和SYNTAX ERRROR

2 个答案:

答案 0 :(得分:20)

如果要更新会话数据,请使用:

$this->session->set_userdata('name', $fullname);

无需使用unset_userdata 更多信息here

答案 1 :(得分:0)

您不会再次重新声明会话,只需使用代码:

$this->session->set_userdata('session_variable_name', $newvalue);

示例:

新会话声明:

$this->session->set_userdata(
               array(
               'year'  =>  2017
                ));

将当前会话值'year'更新为'2018':

$this->session->set_userdata('year', 2018);