조건식 문의 드립니다.

조건식 문의 드립니다.

QA

조건식 문의 드립니다.

본문

A 게시판을 볼수 있는 권한을 5등급 제한,

접근 가능 회원 등급을 5로 승급 후  mb_1를 이용, 5등급이 유지되는 기간을 적어 기간 이후 로그인하면 강제로 레벨을 다운 시켰습니다.


그리고 4등급만 볼 수 있는 게시판이 필요하여 필요회원의 권한을 4등급으로 승급, 회원여분 필드 mb_9에 4등급이 유지되는 기간을 입력하는데 가지는 성공 했는데요

기간이후 강제로 등급을 다운시킬려니 기존의 mb_1을 사용하는 회원이 아래코드에서 문제가 되네요^^;


두개의 mb_1과 mb_9필드를 함께 사용하기 위해서는 아래 코드를 어떻게 바꾸어야 하나요?


$A = strtotime($member['mb_1']);

$B =strtotime($member['mb_9']);


위와 같이 선언하고 $A > $B 또는 $A <$B 이렇게 해선 않될 것 같아 질문 드립니다.^^;

조건식을 어떻게 해야할지 몰라 질문 드립니다.



$now_time_ymd = strtotime(G5_TIME_YMD);
$end_time_ymd = strtotime($member['mb_1']);
 
$down_level = 3; // 기간이 지나면 다운시킬 레벨
if($member['mb_1']) {
if ($now_time_ymd > $end_time_ymd && $member['mb_id'] && !$is_admin) {
    $row = sql_fetch(" select mb_level from {$g5['member_table']} where mb_id = '{$member['mb_id']}' ");
 
    if ($row['mb_level'] != $down_level) {
        sql_query(" update {$g5['member_table']} set mb_level = '$down_level' where mb_id = '{$member['mb_id']}' ");
    }
  }
}


이 질문에 댓글 쓰기 :

답변 1

질문을 보면서 제가 생각한게 맞는진 모르겠지만.. 

우선 mb_1에는 5등급이 유지되는 기간을 넣었고

mb_9에는 4등급이 유지되는 기간을 넣었다는건가요?


그냥 mb_1에는 무조건 등급이 유지되는 기간을 넣으시고 mb_1만 사용해도 될법한데요?

둘다 결국은 기간이 지나면 등급3으로 되는게 맞을까요?

만약 이게 맞다면



$now_time_ymd = strtotime(G5_TIME_YMD);
$end_time_ymd = strtotime($member['mb_1']);
 
$down_level = 3; // 기간이 지나면 다운시킬 레벨

// mb_1에는 기간이 있고 기간이 지난 상태이면서 회원레벨이 3보다 크다면 실행
if($member['mb_1'] && $now_time_ymd > $end_time_ymd && $member['mb_level'] > 3) { 
	sql_query(" update {$g5['member_table']} set mb_level = '{$down_level}', mb_1 = '' where mb_id = '{$member['mb_id']}' ");
}


이렇게 넣으시면 현재 접속회원의 레벨이 3보다 큰 회원이고 mb_1에는 기간이 지난 값이 있는 회원의 레벨이 3으로 변경됩니다.

그리고 mb_1에는 다시 공백을 넣어주므로써 앞으로 접속하더라도 조건에 들어가지않게 하는것입니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,736 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT