0

我正在将创建的用户登录到帐户的尾端。我已经注释掉了我的流程,此后一切似乎都在进行,但是我错过了一两步,因为现在未对发布数据密码进行哈希处理。

控制器:

function validate_credentials()
    {
        // WHEN THE VIEW IS LOADED THIS FUNCTION IS CALLED AND LOADS MODEL AS WELL AS DEFINES THE SALT VARIABLE AND LOADS THE ENCRYPTING HELPER LIBRARY
        $this->load->model('user_model', 'um');
        $login = $this->input->post('submit');
        $salt = $this->_salt();
        $this->load->library('encrypt');


        //IF THE SUBMIT BUTTON IS TRIGGERED THE POST DATA IS SENT TO THE VALIDATE FUNCTION IN THE MODEL VIA VARIABLES CREATED 
        if($login)
        {


        $data = array(
            'email' => $this->input->post('email'),
            'password' => $this->encrypt->sha1($user->salt. $this->encrypt->sha1($this->input->post('password')))
            );

            $user = $this->um->validate($data);

        }

        // IF ITS A REAL USER OPEN THE GATE AND LET THEM IN
        if($user)
        {

            $this->session->set_userdata($data);
            redirect('account/dashboard');
        }

        else

        {
            $this->index();
        }
    }

模型:

function validate($data)
{
    $this->output->enable_profiler(TRUE);

    // TAKING THE DATA FROM THE MODEL AND CHECKING IT AGAINST THE STORED INFO IN THE DB
    $query = $this->db->where($data)->get('users', 1);
    if($query->row())
    {
        return $query->row();
    }
}

提前致谢

4

1 回答 1

1

$user->salt应该只是$salt

于 2012-08-10T07:59:57.507 回答