Как реализовать bcrypt с моделью входа в CodeIgniterPhp

Кемеровские программисты php общаются здесь
Anonymous
Как реализовать bcrypt с моделью входа в CodeIgniter

Сообщение Anonymous »

Я хочу изменить свой логин, чтобы принять bcrypt, но не уверен, что смогу получить свой пароль из базы данных. Мне также нужно вернуть результат с помощью result_array(). Ниже показано, что у меня есть на данный момент. Мне не нужно использовать библиотеки; Я хочу сделать это с помощью встроенных функций.

Код: Выделить всё

public function login($username, $password)
{
$this->db->select('storelte_users.id,first_name,last_name,username,password,profile_id');
$this->db->from('storelte_users');
$this->db->join('storelte_profile', 'storelte_users.profile_id = storelte_profile.id', 'inner');
$this->db->where('username', $username);
$salt = '$2y$11$XsCgn8hLtWL/jMKrwXLAkOk0qs2YehsD2NCAKrgrsyo7YKh.HvNhi';
$this->db->where('password', hash('sha256', $password.$salt));
$result = $this->db->get();
if ($result->num_rows() > 0) {
return $result->result_array();
} else {
return FALSE;
}
}
Я делал что-то подобное, но это не сработало.

Код: Выделить всё

public function login($username,$password)
{
$this->db->where('username', $username);
$account = $this->db->get('storelte_users')->row();
if ($account =! NULL) {
if (password_verify($password,$account->password)) {
return $result->result_array();
} else {
return NULL;
}
}
return NULL;
}
Как я могу изменить свой старый код, чтобы он принимал bcrypt и возвращал мне массив?

Подробнее здесь: https://stackoverflow.com/questions/452 ... ogin-model

Вернуться в «Php»