팁/튜토리얼

원본 출처 : https://sejin7940.co.kr/xe_tips/6325262 

 

------------------------------------

 

회원 로그인시,  아이디(또는 이메일)이 잘못 입력된건지, 비번이 잘못 입력된건지 명확히 구분해서 에러내주고프면


( 이게 어떻게 보면 아이디의 존재여부를 알려주는 게 될 수도 있어서 싫어할 수도 있고.. 
  반대로, 유저 편의를 위해 정확하게 구별해주고픈 경우 아래를 참고해 수정하면 됨 )


member.controller.php 에서

 

function doLogin 에서

 

1)  아이디가 잘못 입력된 경우를 위해

return $this->recordLoginError(-1, 'invalid_user_id');
부분을
return $this->recordLoginError(-1, '존재하지 않거나 삭제된 ID입니다');  로 고치거나

lang/ko.php 에서 
$lang->invalid_user_id = '존재하지 않거나 삭제된 ID입니다.';
로 고치면 됨.


참고로 이메일 로그인이면

return $this->recordLoginError(-1, 'invalid_email_address');
대신에
return $this->recordLoginError(-1, '존재하지 않거나 삭제된 이메일입니다');  로 고치거나

lang/ko.php 에서 
$lang->invalid_email_address = '존재하지 않거나 삭제된 이메일입니다.';
로 고치면 됨.

 

 

2) 비번이 틀린 경우의 메세지를 바꾸고프면

 

if($password && !MemberModel::isValidPassword($member_info->password, $password, $member_info->member_srl))
아래에 있는

$msg = ($used_identifier === 'email_address') ? 'invalid_email_address' : 'invalid_user_id';
부분을 아래처럼 고치면 됨
$msg = "비밀번호가 일치하지 않습니다";

sejin7940 Lv. 6
2008년 정식 사업자등록 후 17년동안 오직 라이믹스/XE 만을 제작해온 XE 전문 제작업체입니다.
순수 라이믹스/XE 기반의 포트폴리오만 350개, 자체 개발/보완 모듈들의 기능개발 내역이 1800가지를 넘습니다.
개발내역들은 https://sejin7940.co.kr 에서 확인 가능합니다. 라이믹스/XE 개발 의뢰 주시면 어떤 기능이든 개발해드립니다!

댓글 1

  • 아래 트리거를 사용하면 코어 수정 없이도 구현이 가능하지 않을까 예상해봅니다.

    https://rhymix.org/tip/1925723

     

    $oLang->set('invalid_user_id', '존재하지 않거나 삭제된 ID입니다.');

    // ...