자동레벨 등업시 문제점 발생
안녕하세요? 자동레벨 소스를 사용하고있는데 레벨 5까지는 등업이 되는데 레벨 6으로 등업이 안되네요
왜그런걸까요? 아무리해봐도 안되네요 소스 충돌때문에 그런걸까요? ㅠㅠ
제가 사용하고있는 소스입니다. 부탁드립니다. 뭐가 잘못되었는지 좀 찾아주세요
레벨 6부터는 자동으로 등업이 안되고있습니다ㅠㅠ
<?
if (!defined("_GNUBOARD_")) exit; // 개별페이지 접근불가
//== ★소스 삽입 시작 ==
//포인트기준 자동레벨업
function levelup_auto($mb_id,$mb_level,$mb_point) {
global $config;
global $g4;
if ($config[cf_use_point] && $mb_id && $mb_level < 9 && $mb_point) {
if($mb_point <= 2999)
{$new_level = 2;}
else if($mb_point <= 4999)
{$new_level = 3;}
else if($mb_point <= 9999)
{$new_level = 4;}
else if($mb_point <= 19999)
{$new_level = 5;}
else if($mb_point >= 29999)
{$new_level = 6;}
else if($mb_point >= 49999)
{$new_level = 7;}
else if($mb_point >= 99999)
{$new_level = 8;}
if ($new_level && $mb_level != $new_level) {
// 레벨변경
mysql_query(" update $g4[member_table] set mb_level='$new_level' where mb_id='$mb_id' ");
// 포인트변경 (필요없으면 주석처리 하세요)
if ($mb_level > $new_level) {
$dw_ment = "레벨감소로 인한 위로금 100포인트를 지급했습니다.";
insert_point($mb_id, 100, "레벨감소로 인한 포인트 위로금", '', '', '');
}
// 쪽지발송 (필요없으면 주석처리 하세요)
$content ="포인트 {$mb_point}점으로 레벨이 {$mb_level}에서 {$new_level}으로 변경되었습니다. $dw_ment";
$tmp_row = mysql_fetch_array(mysql_query("select max(me_id) as max_me_id from $g4[memo_table]"));
$me_ids = $tmp_row[max_me_id] + 1;
mysql_query("insert into $g4[memo_table] (me_id,me_recv_mb_id,me_send_mb_id,me_send_datetime,me_read_datetime,me_memo) values ('$me_ids','$mb_id','$mb_id','$g4[time_ymdhis]','','$content')");
mysql_query("update $g4[member_table] set mb_memo_call='$mb_id' where mb_id='$mb_id'");
}
}
}
//== ★소스 삽입 끝 ==
?>
if (!defined("_GNUBOARD_")) exit; // 개별페이지 접근불가
//== ★소스 삽입 시작 ==
//포인트기준 자동레벨업
function levelup_auto($mb_id,$mb_level,$mb_point) {
global $config;
global $g4;
if ($config[cf_use_point] && $mb_id && $mb_level < 9 && $mb_point) {
if($mb_point <= 2999)
{$new_level = 2;}
else if($mb_point <= 4999)
{$new_level = 3;}
else if($mb_point <= 9999)
{$new_level = 4;}
else if($mb_point <= 19999)
{$new_level = 5;}
else if($mb_point >= 29999)
{$new_level = 6;}
else if($mb_point >= 49999)
{$new_level = 7;}
else if($mb_point >= 99999)
{$new_level = 8;}
if ($new_level && $mb_level != $new_level) {
// 레벨변경
mysql_query(" update $g4[member_table] set mb_level='$new_level' where mb_id='$mb_id' ");
// 포인트변경 (필요없으면 주석처리 하세요)
if ($mb_level > $new_level) {
$dw_ment = "레벨감소로 인한 위로금 100포인트를 지급했습니다.";
insert_point($mb_id, 100, "레벨감소로 인한 포인트 위로금", '', '', '');
}
// 쪽지발송 (필요없으면 주석처리 하세요)
$content ="포인트 {$mb_point}점으로 레벨이 {$mb_level}에서 {$new_level}으로 변경되었습니다. $dw_ment";
$tmp_row = mysql_fetch_array(mysql_query("select max(me_id) as max_me_id from $g4[memo_table]"));
$me_ids = $tmp_row[max_me_id] + 1;
mysql_query("insert into $g4[memo_table] (me_id,me_recv_mb_id,me_send_mb_id,me_send_datetime,me_read_datetime,me_memo) values ('$me_ids','$mb_id','$mb_id','$g4[time_ymdhis]','','$content')");
mysql_query("update $g4[member_table] set mb_memo_call='$mb_id' where mb_id='$mb_id'");
}
}
}
//== ★소스 삽입 끝 ==
?>
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기
댓글 3개
가령 포인트가 50000 이면 new_level 값이 겹치죠...
elseif 의 영역을 잘 확인해 보세요.
즉 elseif( 1000< $mb_point and $mb_point < 2000 ){}
이런식으로 해보세요.