[제로보드4] mysql 4.0 이하에서 4.1 이상으로 서버이전후 로그인 안될때

리눅스/MySQL|2015. 1. 16. 11:06
반응형

login_check.php 파일 수정...

원본소스를...
// 회원 로그인 체크
      $result = mysql_query("select * from $member_table where user_id='$user_id' and password=password('$password')") or error(mysql_error());
      $member_data = mysql_fetch_array($result);


다음과 같이 수정...
// 회원 로그인 체크
      $p_result = mysql_query("select length(password) from $member_table where user_id='$user_id'") or error("password error<br>".mysql_error());
      $p_data = mysql_fetch_row($p_result);
      if($p_data[0] == 41)
              $result = mysql_query("select * from $member_table where user_id='$user_id' and password=password('$password')") or error(mysql_error());
      else {
              $m_result = mysql_query("select * from $member_table where user_id='$user_id' and password=old_password('$password')") or error(mysql_error());
              $m_data = mysql_fetch_array($m_result);
              if($m_data[no]) {
                      @mysql_query("update $member_table set password=password('$password') where no='$m_data[no]'") or error("new password update error<br>".mysql_error());
                      $result = mysql_query("select * from $member_table where user_id='$user_id' and password=password('$password')") or error(mysql_error());
              }
              else Error("로그인을 실패하였습니다");
      }
      $member_data = mysql_fetch_array($result);


위와같이 작업하기 전에 zetyx_member_table의 password 컬럼길이를 20에서 41로 조정

 

 

[출처] g3communication | jjjang (http://www.g3.cc/board/view.php?id=comm04_1&no=593)

반응형

댓글()