테스트 사이트 - 개발 중인 베타 버전입니다

php7 sql 문의 드려요 채택완료

배움터 8개월 전 조회 2,047

$sql = " select * from $g5[member_table] where mb_id = '$mb_id' and mb_password = '".sql_password($mb_password)."' "; $mb = sql_fetch($sql);

 

if (!$mb[mb_id])  {

 .... 내용 비밀번호 오류 ...

}

 

아이디 비밀번호 확인 부탁드립니다.

php7 에서 .sql_password($mb_password). 안 먹히는 같은데요 조언 부탁드립니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
8개월 전

1. 비번이 어떤 모양으로 저장 되어잇는지 부터 확인

*A4B61~~~~~~<=== sql_password 사용 가능

sha256:12000:o~~~~<===이런 형태면 비번 비교 불가

 

2. php7 에서 .sql_password($mb_password). 안 먹히는 같은데요

<==이 말로 추측하자면 비번 암호화 방식이 바뀌고 난 후의 그누보드 버젼 같은데

 이것은 같은 비번이라도 다른 문자로 암호화 되므로 비교할 수 없는 구조입니다

 

3. php7 이라면 쿼리 구분 오류부터 나올 것 같습니다

$mb = sql_fetch($sql, true); 이렇개 하면 오류 나옵니다

수정 ===>   select * from {$g5['member_table']}

 

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

8개월 전

php 버전이 문제가 아니라 그누보드 비밀번호 암호화 방식이 변경되었습니다.

lib/common.lib.php 파일에서 login_password_check 참고해보시면 될 거 같습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

s
sinbi Expert
8개월 전

아래 부분을 수정해 보세요.

  • 수정 전: $g5[member_table]
  • 수정 후: {$g5['member_table']}

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인