Posted
Filed under PHP
[원문] http://www.kimsq.co.kr/note/sky/14015

zboard를 비롯한 예전 프로그램들에서 Rb로 이전 후 
Mysql의 버전과 Rb의 패스워드 암호화 방식이 md5로 바뀜으로 인해 (old_password, password)
로그인 실패 시 이전 암호 방식과 비교하여 강제적으로 암호를 md5 방식으로 변환 해 저장하는 팁을 소개합니다.
"/rb/modules/home/lang.korean/action/a.login.php"를 여신 후
15번째 라인
$d['member']['login_emailid'] = (strpos($id,'@')) ? 1:0;
아래에 다음과 같이 dbupdate Query문을 추가합니다.
/////////////////////////////////////////////////////////////////////////
getDbUpdate($table['s_mbrid'],"pw='".md5($pw)."'","pw=old_password('".$pw."') and id='".$id."'");
/////////////////////////////////////////////////////////////////////////
위 구문은 로그인 창에 입력한 아이디의 패스워드 값이 예전 방식(old_password)의 암호와 아이디 패스워드 값이
일치할 경우 해당 패스워드를 md5로 바꾸어 저장해 줍니다.
단, 매번 로그인 시 해당 업데이트 쿼리가 작동하므로, 운영 중인 웹사이트 공지하셔서
Rb 변환 후 일정 기간동안 운영 후 삭제하시는게 좋을 듯 합니다.
위와 동일한 문제를 겪고 있으시다면 참고 하셔서 도움이 되셨으면 좋겠네요.
이상 Sky~~~ 였습니다.
2014/07/14 16:46 2014/07/14 16:46