[제나플러스] mysql 버젼업에 따른 패스워드 문제 해결~! - 수정본 > 팁앤테크

본문 바로가기
사이트 내 전체검색

팁앤테크

[제나플러스] mysql 버젼업에 따른 패스워드 문제 해결~! - 수정본

페이지 정보

본문

추가 수정내용
  - 옛날 사용자가 mysql 4.0.x 패스워드방식(16 bytes)을 사용하여 로그인하면 mysql 4.1.x 버젼의 패스워드(41 bytes)를 멤버테이블의 mb_password 에 저장하게 됩니다.
 
  장점
  - 로그인할때에만 현재의 패스워드 방식을 확인하고 새로운 패스워드 포맷으로 DB 에 업데이트 하므로 /bbs/register_form.php, /bbs/member_leave.php 를 수정할 필요가 없음
  - 모든 회원이 한번이라도 로그인하게 되면 패스워드가 모두 새로운 패스워드 포맷으로 저장되게 되므로 그누보드가 버젼업될때마다 해당코드를 수정하지 않아도 됨
 

<bbs/login_check.php 수정>

원본 - line 26~28
-----------------------------------------
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password])) {
    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
}
-----------------------------------------

=>

수정본
-----------------------------------------
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password] and sql_old_password($mb_password) != $mb[mb_password])) {
    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
} else {
    if (sql_old_password($mb_password) == $mb[mb_password]) {
        $sql_password = " mb_password = '".sql_password($mb_password)."' ";
        $sql = " update {$g4[member_table]}
                    set $sql_password
                  where mb_id = '$mb[mb_id]' ";
        sql_query($sql);
    }
}
-----------------------------------------






일반적으로 mysql 버젼업이 되면서 발생하는 문제라서 반대의 경우는 잘 없을것 같은데요. 혹시 필요하시면 sql_password 와 sql_old_password 만 바꾸면 될 것 같습니다.
-----------------------------------------
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password] and sql_old_password($mb_password) != $mb[mb_password])) {
    alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");
} else {
    if (sql_password($mb_password) == $mb[mb_password]) {
        $sql_old_password = " mb_password = '".sql_old_password($mb_password)."' ";
        $sql = " update {$g4[member_table]}
                    set $sql_old_password
                  where mb_id = '$mb[mb_id]' ";
        sql_query($sql);
    }
}
-----------------------------------------
mysql 버젼이 4.1.x 이후에서 4.0.x 로 변경되거나 4.1.x 이후이더라도 16byte 패스워드를 사용하는 호스팅으로 이전하는 경우에만 사용하시면 됩니다.






쿼리 횟수를 줄이는 의미에서...ㅎㅎ

$login_check=0;
if (!$mb[mb_id]) {
    $login_check = 1;
} else if (sql_password($mb_password) !== $mb[mb_password]) {

    // 옛날 버젼의 패스워드일지도 모르니까 한번 더 확인합니다.
    if (sql_old_password($mb_password) != $mb[mb_password]) {
        $login_check = 1;
    } else {
        // 옛날 패스워드를 새로운 패스워드로 바꿉니다.
        $sql = " update $g4[member_table] set mb_password='" . sql_password($mb_password) . "' where mb_id='$mb_id' ";
        sql_query($sql);
    }

}

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

댓글목록

등록된 댓글이 없습니다.

Total 285건 9 페이지
  • RSS
팁앤테크 목록
번호 제목 글쓴이 조회 추천 날짜
85 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20102 0 04-24
84 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20160 0 01-18
83 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20161 0 03-13
82 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20164 0 03-23
81 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20190 0 02-09
80 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20282 0 05-02
79 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20315 0 12-27
78 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20337 2 03-06
77 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20380 0 02-16
76 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20392 0 02-29
75 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20408 0 04-12
74 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20413 0 06-28
73 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20430 0 10-29
열람중 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20493 0 01-21
71 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20528 0 04-18
70 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20537 0 05-02
69 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20646 0 10-17
68 월드컵쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20669 0 07-06
67 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20715 0 08-21
66 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20798 0 04-23
65 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20895 0 10-16
64 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20909 0 10-16
63 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 20921 0 03-21
62 월드컵쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 21010 0 07-06
61 제로쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 21215 0 04-24

검색

회원로그인

회원가입

사이트 정보

株式会社YHPLUS / 대표 : ZERO
〒140-0011 東京都品川区東大井2-5-9-203
050-5539-7787
오픈카카오톡 (YHPLUS) :
https://open.kakao.com/o/slfDj15d

접속자집계

오늘
3,205
어제
5,045
최대
9,679
전체
2,617,583
Copyright (c) 株式会社YHPLUS. All rights reserved.