포인트별 레벨자동변환
포인트별로 레벨(mb_level) 을 자동으로 변환시키는 방법입니다
/lib/common.lib.php 파일의
insert_point 함수의 884번째줄 아래에 아래내용을 추가합니다.
[code]
// 포인트 따라 회원 등급 바꾸기
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'";
}
[/code]
sum_point 는 회원의 전체포인트를 가져오는 것입니다.
따라서 회원의 전체포인트 합이 위 조건에 만족할때 new_level 값을 강제 지정해줍니다.
관리자인 경우 는 레벨을 바꾸면 안되므로 is_admin 조건을 추가했습니다.
위와같이 추가하셨다면
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이쿼리를
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이렇게 바꿉니다.
위와 마찬가지로 delete_point 함수에도 아래 내용을 추가해 줍니다
$sum_point = $row[sum_po_point]; 밑에
[code]
// 포인트 따라 회원 등급 바꾸기
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'";
}
[/code]
위 쿼리를 추가해 주시고
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이쿼리를
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이렇게 바꿔주세요
포인트별로 레벨을 자동 변환하는 것은 위방식이 끝입니다.
레벨변경에 대한 로그를 추가하고 싶으시다면 위코드에서 별도의 로그저장 구문을 넣어주시면 됩니다.
/lib/common.lib.php 파일의
insert_point 함수의 884번째줄 아래에 아래내용을 추가합니다.
[code]
// 포인트 따라 회원 등급 바꾸기
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'";
}
[/code]
sum_point 는 회원의 전체포인트를 가져오는 것입니다.
따라서 회원의 전체포인트 합이 위 조건에 만족할때 new_level 값을 강제 지정해줍니다.
관리자인 경우 는 레벨을 바꾸면 안되므로 is_admin 조건을 추가했습니다.
위와같이 추가하셨다면
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이쿼리를
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이렇게 바꿉니다.
위와 마찬가지로 delete_point 함수에도 아래 내용을 추가해 줍니다
$sum_point = $row[sum_po_point]; 밑에
[code]
// 포인트 따라 회원 등급 바꾸기
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'";
}
[/code]
위 쿼리를 추가해 주시고
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이쿼리를
[code]
// 포인트 UPDATE
$sql = " update $g4[member_table] set mb_point = '$sum_point' $squery where mb_id = '$mb_id' ";
sql_query($sql);
[/code]
이렇게 바꿔주세요
포인트별로 레벨을 자동 변환하는 것은 위방식이 끝입니다.
레벨변경에 대한 로그를 추가하고 싶으시다면 위코드에서 별도의 로그저장 구문을 넣어주시면 됩니다.
댓글 17개
vvbn45
12년 전
우선 추천을!!!
해보진 않았찌만 ㅎㅎ
혹시 저기에 날짜같은거 넣을라믄 어떻게 해야되나요?
예를들어 포인트는 다 채웠지만 가입한지 30일이라든지 기간이 안되면 레벨업 안되게끔용..
많이 어렵겠죠..ㅠ
해보진 않았찌만 ㅎㅎ
혹시 저기에 날짜같은거 넣을라믄 어떻게 해야되나요?
예를들어 포인트는 다 채웠지만 가입한지 30일이라든지 기간이 안되면 레벨업 안되게끔용..
많이 어렵겠죠..ㅠ
넓은마인드
12년 전
가입날짜별 레벨제한은 좋은 아이디어 네요.
지금 하는 작업만 끝나면 좀더 보완해서 올려볼께요.
지금 하는 작업만 끝나면 좀더 보완해서 올려볼께요.
12년 전
아,,제가 바라고 있던 팁이 끝내 나타났네요.
이 팁을 이용해서 강제적으로 가입인사를 시키고, 게시물작성이 가능하도록 할 예정입니다.
넓은마인드님, 감사합니다.
추쳔하고 갑니다. 스크랩도 하고요....^^
이 팁을 이용해서 강제적으로 가입인사를 시키고, 게시물작성이 가능하도록 할 예정입니다.
넓은마인드님, 감사합니다.
추쳔하고 갑니다. 스크랩도 하고요....^^
넓은마인드
12년 전
감사합니다.
좀더 보완해서 업그레이드도 할 예정입니다.^^
좀더 보완해서 업그레이드도 할 예정입니다.^^
12년 전
역시 넓은 마인드님이 최고네요
넓은마인드
12년 전
과찬이십니다.~
dsv421
12년 전
^^ 감사합니다. 잘보고 갑니다.
vvbn45
12년 전
혹시 이거 해보신분 계세요? 테스트로 해봤는데 되지가 않아서..정말 좋은 팁인데..ㅠㅠ윽..
넓은마인드
12년 전
어떻게 안되는지 말해주시면 답변을 해드리겠씁니다.~
vvbn45
12년 전
레벨전환은 되는데 최고 관리자 레벨이 10이 아니라 2,4로 막 변경이 되버려요 ㅠㅠ
넓은마인드
12년 전
/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 이 안먹는 오류가 있는거 같습니다.
12년 전
레벨 99까지 인경우에 어떻게하죠 ㅠㅠ
넓은마인드
12년 전
레벨 99까지인 경우 elseif 조건문을 추가해서 처리해야 합니다.
앞으로 레벨 추가및 날짜 지정 등의 업그레이드가 될 예정입니다.
앞으로 레벨 추가및 날짜 지정 등의 업그레이드가 될 예정입니다.
nick22
12년 전
해당 내용 적용 후 테스트를 해본결과 적용되지 않습니다.
현재 그누보드 기본 빌더를 사용중이며, 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);
아래에 추가해놓은 상태입니다..
11년 전
무작정 따라하기 했다가 레벨 1~10까지 에서 1하고 2만 남았어요 ㅠㅠ
11년 전
감사합니다. 일단은 다른분들의 도움을 받아 적용해볼게요...
8년 전
감사합니다.
게시판 목록
그누4 팁자료실
그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.
나누면 즐거움이 커집니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 3289 | 9년 전 | 4819 | ||
| 3288 | 9년 전 | 5803 | ||
| 3287 |
|
9년 전 | 3508 | |
| 3286 |
또치하우스
|
9년 전 | 12303 | |
| 3285 | 9년 전 | 11505 | ||
| 3284 |
다람쥐7마리
|
10년 전 | 4684 | |
| 3283 |
블랙초콜렛더블샷
|
10년 전 | 5974 | |
| 3282 |
또치하우스
|
10년 전 | 10272 | |
| 3281 | 10년 전 | 9789 | ||
| 3280 | 10년 전 | 4994 | ||
| 3279 | 10년 전 | 4274 | ||
| 3278 | 10년 전 | 5359 | ||
| 3277 |
|
10년 전 | 5268 | |
| 3276 | 10년 전 | 5781 | ||
| 3275 | 10년 전 | 4352 | ||
| 3274 | 10년 전 | 5594 | ||
| 3273 | 10년 전 | 6910 | ||
| 3272 | 10년 전 | 7223 | ||
| 3271 | 10년 전 | 4937 | ||
| 3270 |
|
10년 전 | 5406 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기