Я пытаюсь создать логин. Но при проверке учетных данных из базы данных она регистрируется, если какие-либо данные верны, а другие неверны.
для имени входа, электронной почты, мобильного телефона разрешены.
«статус» должен быть «активным» является дополнительным условием.
Что я делаю неправильно?Ошибка в модели входа
function login($username, $password) {
$where = "status='active' AND name='$username' OR email_id= '$username' OR mobile_no='$username' AND password ='trim($password)'";
$this->db->select('*');
$this->db->from('user_details');
$this->db->where($where);
//$this->db->where('password', trim($password));
$this->db->limit(1);
$query = $this->db->get();
if ($query->num_rows() == 1) {
return $query->result();
} else {
return false;
}
}
Установите ИЛИ statments в скобках(), как: «статус = 'активный' AND (имя = '$ имя пользователя' OR email_id = '$ имя пользователя' OR mobile_no = '$ username') И пароль = 'trim ($ password)' " И я надеюсь, что вы избежите пользовательских входов, иначе ваш код будет уязвим для sql-injection – Tiega
SQL-Injection ... –