dousou2897 2011-09-28 22:24
浏览 13
已采纳

在Codeigniter上创建库时出错

I created this library:

class Header 
{

    function __construct()
    {
        $this->user();
    }

    function user()
    {
        $my_user = $this->session->userdata('my_user'); // True or False

        if($my_user)
        {
            echo 'user!';
        }
    }

}

/* End of file Header.php */

I call it in any controller:

public function __construct()
    {
        parent::__construct();
        $this->load->library('Header');
    }

The error:

Fatal error: Call to a member function userdata() on a non-object in ** on line 11

I don't know what is the problem, I'm sure that the library session is called (I call it from autoload)... what can I do? When this library code is in any controller it works great, the problem is anywhere with custom library.

  • 写回答

2条回答 默认 最新

  • duanbo7517 2011-09-28 22:30
    关注

    That won't work in a library, see the documentation.

    $CI =& get_instance();
    $CI->load->library('session');
    
    $my_user = $CI->session->userdata('my_user');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题
  • ¥15 ad5933的I2C
  • ¥15 请问RTX4060的笔记本电脑可以训练yolov5模型吗?
  • ¥15 数学建模求思路及代码
  • ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题