원본 출처 : 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 = "비밀번호가 일치하지 않습니다";
순수 라이믹스/XE 기반의 포트폴리오만 350개, 자체 개발/보완 모듈들의 기능개발 내역이 1800가지를 넘습니다.
개발내역들은 https://sejin7940.co.kr 에서 확인 가능합니다. 라이믹스/XE 개발 의뢰 주시면 어떤 기능이든 개발해드립니다!
댓글 1
아래 트리거를 사용하면 코어 수정 없이도 구현이 가능하지 않을까 예상해봅니다.
https://rhymix.org/tip/1925723
$oLang->set('invalid_user_id', '존재하지 않거나 삭제된 ID입니다.');
// ...