포인트별 레벨자동변환 정보
포인트별 레벨자동변환본문
포인트별로 레벨(mb_level) 을 자동으로 변환시키는 방법입니다
/lib/common.lib.php 파일의
insert_point 함수의 884번째줄 아래에 아래내용을 추가합니다.
sum_point 는 회원의 전체포인트를 가져오는 것입니다.
따라서 회원의 전체포인트 합이 위 조건에 만족할때 new_level 값을 강제 지정해줍니다.
관리자인 경우 는 레벨을 바꾸면 안되므로 is_admin 조건을 추가했습니다.
위와같이 추가하셨다면
이쿼리를
이렇게 바꿉니다.
위와 마찬가지로 delete_point 함수에도 아래 내용을 추가해 줍니다
$sum_point = $row[sum_po_point]; 밑에
위 쿼리를 추가해 주시고
이쿼리를
이렇게 바꿔주세요
포인트별로 레벨을 자동 변환하는 것은 위방식이 끝입니다.
레벨변경에 대한 로그를 추가하고 싶으시다면 위코드에서 별도의 로그저장 구문을 넣어주시면 됩니다.
/lib/common.lib.php 파일의
insert_point 함수의 884번째줄 아래에 아래내용을 추가합니다.
// 포인트 따라 회원 등급 바꾸기
if(!$is_admin){
if($sum_point >= 0 && $sum_point < 1500){
$new_level = 2;
}elseif($sum_point >= 1500 && $sum_point < 3000){
$new_level = 3;
}elseif($sum_point >= 3000 && $sum_point < 5000){
$new_level = 4;
}elseif($sum_point >= 5000 && $sum_point < 10000){
$new_level = 5;
}elseif($sum_point >= 10000 && $sum_point < 20000){
$new_level = 6;
}elseif($sum_point >= 20000 && $sum_point < 30000){
$new_level = 7;
}elseif($sum_point >= 30000 && $sum_point < 40000){
$new_level = 8;
}elseif($sum_point >= 40000 && $sum_point < 50000){
$new_level = 9;
}elseif($sum_point >= 50000){
$new_level = 10;
}
$squery = ", mb_level = '$new_level'";
}
sum_point 는 회원의 전체포인트를 가져오는 것입니다.
따라서 회원의 전체포인트 합이 위 조건에 만족할때 new_level 값을 강제 지정해줍니다.
관리자인 경우 는 레벨을 바꾸면 안되므로 is_admin 조건을 추가했습니다.
위와같이 추가하셨다면
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
이쿼리를
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
이렇게 바꿉니다.
위와 마찬가지로 delete_point 함수에도 아래 내용을 추가해 줍니다
$sum_point = $row[sum_po_point]; 밑에
// 포인트 따라 회원 등급 바꾸기
if(!$is_admin){
if($sum_point >= 0 && $sum_point < 1500){
$new_level = 2;
}elseif($sum_point >= 1500 && $sum_point < 3000){
$new_level = 3;
}elseif($sum_point >= 3000 && $sum_point < 5000){
$new_level = 4;
}elseif($sum_point >= 5000 && $sum_point < 10000){
$new_level = 5;
}elseif($sum_point >= 10000 && $sum_point < 20000){
$new_level = 6;
}elseif($sum_point >= 20000 && $sum_point < 30000){
$new_level = 7;
}elseif($sum_point >= 30000 && $sum_point < 40000){
$new_level = 8;
}elseif($sum_point >= 40000 && $sum_point < 50000){
$new_level = 9;
}elseif($sum_point >= 50000){
$new_level = 10;
}
$squery = ", mb_level = '$new_level'";
}
위 쿼리를 추가해 주시고
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
이쿼리를
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
이렇게 바꿔주세요
포인트별로 레벨을 자동 변환하는 것은 위방식이 끝입니다.
레벨변경에 대한 로그를 추가하고 싶으시다면 위코드에서 별도의 로그저장 구문을 넣어주시면 됩니다.
추천
4
4
댓글 17개
우선 추천을!!!
해보진 않았찌만 ㅎㅎ
혹시 저기에 날짜같은거 넣을라믄 어떻게 해야되나요?
예를들어 포인트는 다 채웠지만 가입한지 30일이라든지 기간이 안되면 레벨업 안되게끔용..
많이 어렵겠죠..ㅠ
해보진 않았찌만 ㅎㅎ
혹시 저기에 날짜같은거 넣을라믄 어떻게 해야되나요?
예를들어 포인트는 다 채웠지만 가입한지 30일이라든지 기간이 안되면 레벨업 안되게끔용..
많이 어렵겠죠..ㅠ
가입날짜별 레벨제한은 좋은 아이디어 네요.
지금 하는 작업만 끝나면 좀더 보완해서 올려볼께요.
지금 하는 작업만 끝나면 좀더 보완해서 올려볼께요.
아,,제가 바라고 있던 팁이 끝내 나타났네요.
이 팁을 이용해서 강제적으로 가입인사를 시키고, 게시물작성이 가능하도록 할 예정입니다.
넓은마인드님, 감사합니다.
추쳔하고 갑니다. 스크랩도 하고요....^^
이 팁을 이용해서 강제적으로 가입인사를 시키고, 게시물작성이 가능하도록 할 예정입니다.
넓은마인드님, 감사합니다.
추쳔하고 갑니다. 스크랩도 하고요....^^
감사합니다.
좀더 보완해서 업그레이드도 할 예정입니다.^^
좀더 보완해서 업그레이드도 할 예정입니다.^^
역시 넓은 마인드님이 최고네요
과찬이십니다.~
^^ 감사합니다. 잘보고 갑니다.
혹시 이거 해보신분 계세요? 테스트로 해봤는데 되지가 않아서..정말 좋은 팁인데..ㅠㅠ윽..
어떻게 안되는지 말해주시면 답변을 해드리겠씁니다.~
레벨전환은 되는데 최고 관리자 레벨이 10이 아니라 2,4로 막 변경이 되버려요 ㅠㅠ
/lib/common.lib.php 파일의 insert_point 함수에
global $is_admin; <= 이구문이 있는지 확인해 보시고
있다면 주석 처리하신후
$is_admin = is_admin($mb_id); <= 이걸 추가해 보세요
delete_point 함수도 마찬가지로 수정해보세요.
global $is_admin 이 안먹는 오류가 있는거 같습니다.
global $is_admin; <= 이구문이 있는지 확인해 보시고
있다면 주석 처리하신후
$is_admin = is_admin($mb_id); <= 이걸 추가해 보세요
delete_point 함수도 마찬가지로 수정해보세요.
global $is_admin 이 안먹는 오류가 있는거 같습니다.
레벨 99까지 인경우에 어떻게하죠 ㅠㅠ
레벨 99까지인 경우 elseif 조건문을 추가해서 처리해야 합니다.
앞으로 레벨 추가및 날짜 지정 등의 업그레이드가 될 예정입니다.
앞으로 레벨 추가및 날짜 지정 등의 업그레이드가 될 예정입니다.
해당 내용 적용 후 테스트를 해본결과 적용되지 않습니다.
현재 그누보드 기본 빌더를 사용중이며, 884번 줄의 바로 아래에 내용을 추가해 보니 오류가 출력되어
$result = sql_query(" delete from $g4[point_table]
where mb_id = '$mb_id'
and po_rel_table = '$rel_table'
and po_rel_id = '$rel_id'
and po_rel_action = '$rel_action' ", false);
아래에 추가해놓은 상태입니다..
현재 그누보드 기본 빌더를 사용중이며, 884번 줄의 바로 아래에 내용을 추가해 보니 오류가 출력되어
$result = sql_query(" delete from $g4[point_table]
where mb_id = '$mb_id'
and po_rel_table = '$rel_table'
and po_rel_id = '$rel_id'
and po_rel_action = '$rel_action' ", false);
아래에 추가해놓은 상태입니다..
무작정 따라하기 했다가 레벨 1~10까지 에서 1하고 2만 남았어요 ㅠㅠ
감사합니다. 일단은 다른분들의 도움을 받아 적용해볼게요...
감사합니다.