Php 代码点火器未加载模型

Php 代码点火器未加载模型,php,codeigniter,Php,Codeigniter,在我的控制器(controllers/user.php)中,我有: 在我的模型(models/user_model.php)中,我有 如果我移除 or die("error"); 从load语句中,我得到一个500内部服务器错误 我检查了config.php,这里有一些信息 $config['base_url'] = ''; $config['index_page'] = ''; $config['uri_protocol'] = 'AUTO'; 我还编辑了.htaccess文件,以从UR

在我的控制器(controllers/user.php)中,我有:

在我的模型(models/user_model.php)中,我有

如果我移除

or die("error");
从load语句中,我得到一个500内部服务器错误

我检查了config.php,这里有一些信息

$config['base_url'] = ''; 
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
我还编辑了.htaccess文件,以从URL中删除“index.php”,使其更干净

RewriteEngine On
RewriteCond $1 !^(index.php|images|captcha|css|js|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

据说在构造(构造函数)中加载模型和库是一种最佳实践

}


还请尝试将控制器名称“User”更改为“Users”(没有错误,但如果不起作用,请尝试)。命名冲突可能存在。

不要在模型中使用contruct方法,而是遵循以下规则:

class User extends CI_Controller 
{
    public function __construct()
    {
        parent::__construct();
        $this->load->database();
        $this->load->helper('common');
        $this->load->model('user_model');
    }    

    public function index() 
    {       

    }
}
# in the User controller
class User extends CI_Controller{
    public function __construct(){
        parent::__construct();
        $this->load->database();
        $this->load->helper('common');
        $this->load->model('user_model');
    }

    public function index()
    {       
         //$this->load->model('user_model')or die("error");
         #now you can use the user_model here 
    }
}

如果只需要为特定函数加载模型,则只在该函数中加载模型,而不是在构造函数中加载模型。在构造函数中加载模型使模型函数可供所有控制器函数使用。

还值得注意的是,当加载模型时,它不会自动连接到数据库,但如果将TRUE作为第三个参数传递,则它会自动连接到数据库

class User extends CI_Controller 
{
    public function __construct() 
    {       
         parent:: __construct();
         $this->load->model('user_model', '', TRUE);  
    }
}

如果您知道要大量加载模型,还可以在application/config/autoload.php文件中自动加载它,检查文件名。它们是extension.php吗??我自己也有这个问题,结果是我忘了添加.php扩展名

Localhost,或者在线测试/直播站点?我现在正在本地测试。MAMPnarrow向下-删除
$this->load->model('user_model')或die(“error”)并放置回显'a';出口如果它给你“a”,那么你的问题与模型有关。如果检查应用程序/config/database.php的配置,那么接下来应该做的事情是。您可以在$this->load->database()之后退出;(加载帮助程序之前)要查看是否是数据库连接turn错误报告,您不应该在显示500个错误页面的环境中开发…尝试了您的建议,Galchen。它没有给我“a”。
class User extends CI_Controller 
{
    public function __construct()
    {
        parent::__construct();
        $this->load->database();
        $this->load->helper('common');
        $this->load->model('user_model');
    }    

    public function index() 
    {       

    }
}
# in the User controller
class User extends CI_Controller{
    public function __construct(){
        parent::__construct();
        $this->load->database();
        $this->load->helper('common');
        $this->load->model('user_model');
    }

    public function index()
    {       
         //$this->load->model('user_model')or die("error");
         #now you can use the user_model here 
    }
}
class User extends CI_Controller 
{
    public function __construct() 
    {       
         parent:: __construct();
         $this->load->model('user_model', '', TRUE);  
    }
}