登录注册无法以码码器登录


Login registration fails to login in codeigniter?

我一直试图连接我的数据库与php codeigniter框架,因为我正在为我的项目创建一个登录表单,但我一直有问题表单验证回调。即使我输入了正确的用户名和密码。它仍然给我不正确的用户名/密码。

这是我的代码database.php位于application/config:

$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'users';
$db['default']['password'] = 'p455w0rd';
$db['default']['database'] = 'users';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = FALSE;
$db['default']['db_debug'] = FALSE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
下面是我的登录控制器的代码:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class C_login extends CI_controller{
    public function index()
    {
        $this -> login();
    }
    public function login(){
        $this->load->view('login');     
    }
    public function members(){
        $this->load->view('members');
    }

    public function login_validation(){
        $this->load->library('form_validation');
        //$this->form_validation->CI =& $this;
        $this->form_validation->set_rules('username', 'Username', 'required|trim|xss_clean|callback_validate_credentials');
        $this->form_validation->set_rules('password', 'Password', 'required|md5|trim');
        if($this->form_validation->run($this) == false){
            $this->load->view('login');
        }
        else{
            redirect('c_login/members');
        }
    }
    public function validate_credentials(){
        $this->load->model('model_users');
        if($this->model_users->can_log_in()){
            return true;
        }
        else{
            $this->form_validation->set_message('validate_credentials', 'Incorrect username/password');
            return false;
        }
    }
}
我model_users

:

<?php
class Model_users extends CI_Model {
    public function can_log_in(){
        $this->db->where('username', $this->input->post('username'));
        $this->db->where('password', md5($this->input->post('password')));
        $query = $this->db->get('users');
        if($query->num_rows() == 1){
            return true;
        }
        else{
            return false;
        }
    }
}
如果你们能帮我解决这个问题,那真是太有帮助了。我使用的是XAMPP 1.7.3a.

从语句中删除md5

 $this->form_validation->set_rules('password', 'Password', 'required|md5|trim');

你将这里的密码转换为md5之后,你再次转换密码在你的模型

  $this->db->where('password', md5($this->input->post('password')));

我想这就是问题所在