用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2998|回复: 3
收起左侧

[HELP] 自定义的session数据如何取得?

[复制链接]
发表于 2011-12-15 18:11:13 | 显示全部楼层 |阅读模式
本帖最后由 hansonfox 于 2011-12-16 09:19 编辑

在控制器A 中设置了session 代码如下:
PHP复制代码
 
    $user_session = array(
                'username'=>'$username', // 变量$username 在前面定义过
                'logged_in'=>TRUE    
                );
                $this->session->set_userdata('$user_session');
               
                redirect('http://localhost/CI/index.php/A');
 
复制代码

之后跳转至另一个控制器B,在B中的index()函数中取session的值, 代码:
PHP复制代码
 
    function index(){
        //session库在构造函数里加载过了
        $user = $this->session->userdata('user_session');
        $s_id = $this->session->userdata('session_id');
        $ip = $this->session->userdata('ip_address');
        $data['user'] = $user;
        $data['s_id'] = $s_id;
        $data['ip'] = $ip;
       
        $this->load->view('operation_view',$data);
 
复制代码

在view中能显示$s_id和ip,但是$user显示不出
在A中尝试单独设置session   $this->session->set_userdata('username', 'abc');在view里能显示出 'abc'这个字符
请问是前面变量的问题么? 怎么才能把$username变量显示出来?还有怎么设置和取得自定义的session数据,因为想设置到session里的不是一个值,求解答。。。。。


发表于 2011-12-15 23:10:21 | 显示全部楼层
$this->session->set_userdata('$user_session');

这里有问题吧
 楼主| 发表于 2011-12-16 15:36:18 | 显示全部楼层
呼~    终于正常了,改了2个地方

PHP复制代码
$user_session = array(
                'username'=>$username,
 
复制代码
PHP复制代码
 
                $user = $this->session->userdata('username');
 
复制代码
发表于 2011-12-16 17:18:01 | 显示全部楼层
'$username' 变字符串了

本版积分规则