패스워드 입력시 틀릴경우 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

패스워드 입력시 틀릴경우 정보

패스워드 입력시 틀릴경우

본문

오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.

오류 주소 :

안녕하세요
보통 은행에 보면 팩스워드를 입력을 잘못했을경우 더 이상 로그인이 불가능하게 만들고 싶은데요
어떻게 하면 되나요?
또한 아이디찾기 팩스워드찾기도 3회 이상 정보를 잘못입력을 했을경우 접속불가능하게 하고져 합니다.
방법이 없을까요?
  • 복사

댓글 전체

^^ 안녕하세요

일단 제가 생각하는 구현 방법에 대하여 아주 간단히 말씀 드립니다.

응용 방법이야 사용하는 분들 마다 다 틀리실테니 이건 그중에 1가지 방법이라고만 생각해 주십시오.


일단 2가지 방법이 있을듯 합니다.

1번째 : 일단 로그인 체크 테이블을 한개 만드신후 그 역활을 하게 하시면 됩니다.
         
간단 흐름도 -_-;;

로그인 체크 --> 실패 --> DB 기록
                  +-------+ (반복 부분)

일정회수 초과시 더이상 접속 불가 (업체에 FAX 내지 전화로 연락하기 폼이나 alert 박스 띄우기

물런 login 부분에서 일단 기존 자료 갯수 체크한후 로그인 여부 를 체크하셔야 겠죠.

2번째 자신의 구현 능력이 부족할 경우 제작의뢰에 요청하는것도 하나의 방법입니다.

------------------------------------------------------------------------------------------
방법을 찾기보단 문제의 기본에서 출발하십시오.

그것이 그 문제를 가장 쉽게 푸는 방법입니다.

너무 거창하게 생각하지 마십시오 ^^

로직이 나쁘면 어떻습니다. / 일단 속도가 느리면 어떻습니까. /  초기 개발(구현)은 원하는 결과가 나온후에 더욱 나은 방향으로 가는겁니다.

모든 문제는 작은 ?  하나로 시작됩니다 ^^
/bbs/login_check.php ...

if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {
    // 로그인 오류를 db에 기록 합니다.
    $sql = " insert into $g4[login_fail_log_table] (mb_id, ip_addr, log_datetime, log_url) values ('$mb_id', '$_SERVER[REMOTE_ADDR]', '$g4[time_ymdhis]', '/bbs/login_check.php') ";
    sql_query($sql);

   
    // 오류 횟수를 체크해서 차단할지를 결정 합니다.
    if ($config['cf_retry_time_interval'] > 0 && $config['cf_retry_count']) {
        $sql = " select count(*) as cnt from $g4[login_fail_log_table] where log_datetime >= " . date("Y-m-d H:i:s", $g4[server_time] - $config['cf_retry_time_interval']);
        $result = sql_fetch($sql);
       
        $ip = $_SERVER[REMOTE_ADDR];
        if ($result['cnt'] >= $config['cf_retry_count']) {
            $pattern = explode("\n", trim($config['cf_intercept_ip']));
            if (empty($pattern[0])) // ip 차단목록이 비어 있을 때
                $cf_intercept_ip = $ip;
            else
                $cf_intercept_ip = trim($config['cf_intercept_ip'])."\n{$ip}";
            $sql = " update {$g4['config_table']} set cf_intercept_ip = '$cf_intercept_ip' ";
            sql_query($sql);
        }
    }

    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
}

이부분을 추가를 하면 정상적인접근도 가입된 회원이 아니거나 패스워드가 틀립니다. 패스워드는 대소문자를 구분합니다. 라고 메시지가 나오네요.

뭐가 잘못된것일까요?
© SIRSOFT
현재 페이지 제일 처음으로