CodeIgniter에서 활성 레코드를 사용하고 있습니다. 나는 어떤 접근을해야하는지 혼란 스럽다. 현재 우리의 로그인 시스템은 사용자가 패스워드와 함께 로그인을 위해 username/email을 사용하도록합니다. 하지만 현재 사용중인 기록은 전자 메일 + 암호를 사용하지 않으면 사용자가 로그인 할 수있게합니다.codeigniter 활성 레코드 where, or_where?
$this->db->select('id,level,email,username');
$this->db->where('email',$user);
$this->db->or_where('username',$user);
$this->db->where('password',$pass);
$query = $this->db->get('users');
if($query->num_rows>0)
return TRUE;
else
return FALSE;
샘플 입력 :
는 지금이 내 쿼리입니다
- 아이디 : 시험 | 비밀번호 : 패스 | 결과 : 성공
- 아이디 : 시험 | 비밀번호 : empty | 결과 : 실패
- 아이디 : [email protected] | 비밀번호 : 패스 | 결과 : 성공
- 아이디 : [email protected] | 비밀번호 : empty | 결과 : 성공
네 번째 테스트 입력은 결과에 실패해야하지만 암호가 비어있는 경우에도 사용자가 로그온 할 것으로 보인다.
대 : 이것은 올바른 그것을 할 수있는 방법입니다! 이 빠른 답장을 보내 주셔서 감사합니다. –
이 활성 레코드의 목적을 패배시키고 SQL 주입을위한 응용 프로그램을 열지 않을까요? –