我的脚本无法加载form_validation类。
我是从autoload.php,控制器的_ 构造方法和我打算使用的方法(即.login()方法)中调用它的。
autoload.php
$autoload['libraries'] = array('database', 'Login', 'Template', 'form_validation', 'session');
控制器
<?php
class Login extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('user_model');
$this->load->library('form_validation');
}
function logmein()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('userEmail', 'email', 'trim|required|valid_email|callback__check_login');
$this->form_validation->set_rules('userPassword', 'password', 'trim|required');
请注意,我没有尝试从所有三个地方加载课程,我单独尝试了每个,并且组合,但没有成功。我在本地主机上运行 PHP版本5.3.5 ,在 Windows 7 上使用 XAMPP 。我真正的服务器是Linux,所以如果它在Linux上运行良好,我可以忍受=)
更新:我有var_dumped并检查了资源,_user_model_和_form_validation_似乎都运行良好。但是,当我var_dump($this->user_model)
或var_dump($this->form_validation)
返回NULL
时。
答案 0 :(得分:1)
我的所有代码实际上都没有错误。
但是在我的一个库类中,我扩展了一个控制器类来加载另一个导致我所有错误的库。
我已将其删除并使用$CI =& get_instance();
方法加载其他类,现在一切正常。
答案 1 :(得分:0)
您有两个同时加载的Login
个类。我敢打赌他们造成了碰撞。将Library类的名称更改为LoginTools或类似的东西,这将有所帮助。