cstkwjk 发表于 2011-8-3 14:01:25

autoload中database加载无效!CI2.02 不解!在线等大侠解决。感谢




在$this->db->get('users');行出现

A PHP Error was encounteredSeverity: Notice
Message: Undefined property: User_mdl::$db
Filename: models/user_mdl.php
Line Number: 79

其中:
autoload.php:
$autoload['libraries'] = array('database','session');



若在$this->db->get('users');之前手动引入数据库文件$this->load->database();
错误不再出现!数据调用成功!

jeongee 发表于 2011-8-3 14:04:41

你的model有没有写构造函数!!!
即:
function __construct()
{
    parent::__construct();
}

cstkwjk 发表于 2011-8-3 14:05:17

写了

cstkwjk 发表于 2011-8-3 14:05:52

       public function __construct(){
               parent::__construct();
              
              
       }

jeongee 发表于 2011-8-3 14:06:00

cstkwjk 发表于 2011-8-3 14:05 static/image/common/back.gif
写了

那你把代码贴完整一点

cstkwjk 发表于 2011-8-3 14:11:04



class User_mdl extends CI_Controller
{

        /*
       * 构造函数
       * @access public
       * @return void
       */
       public function __construct(){
               parent::__construct();
        }        
              

public function validate_user($username, $password)
        {                             
                echo $username;
                $data = FALSE;
                //根据username查询数据库
        //       $this->load->database();
               $query = $this->db->get('zk_users');
                foreach ($query->result() as $row)
                        {
                          echo $row->username;
                        }
                //测试结束
                $this->db->where('username', $username);
                $query = $this->db->get(‘zk_users’);
               
                if($query->num_rows() == 1)
            {
              echo "success!";
            }

                $query->free_result();

        }

}





cstkwjk 发表于 2011-8-3 14:14:12


$autoload['packages'] = array(APPPATH.'third_party');


/*
| -------------------------------------------------------------------
|Auto-load Libraries
| -------------------------------------------------------------------
| These are the classes located in the system/libraries folder
| or in your application/libraries folder.
|
| Prototype:
|
|        $autoload['libraries'] = array('database', 'session', 'xmlrpc');
*/

$autoload['libraries'] = array('database','session');


/*
| -------------------------------------------------------------------
|Auto-load Helper Files
| -------------------------------------------------------------------
| Prototype:
|
|        $autoload['helper'] = array('url', 'file');
*/

$autoload['helper'] = array('url');




jeongee 发表于 2011-8-3 14:15:11

看上去你是在写model,但是你又extends 控制器。
不过我也没看出来什么问题

cstkwjk 发表于 2011-8-3 14:16:48

呵呵发现错误了~   
低级错误!
model应该extends model

cstkwjk 发表于 2011-8-3 14:17:16

感谢jeongee
页: [1] 2
查看完整版本: autoload中database加载无效!CI2.02 不解!在线等大侠解决。感谢