c

충전기간에 따라 레벨자동 등업

· 2013-01-24 (목) 16:00:17 · 3344

작업하다가 필요하게 되어 해보았는데 필요하신 분들은 수정하여 쓰셔도 좋을것같습니다.

1. 기간 충전시 바로 레벨 등업
/gnuboard4/contents/period_result.php  파일 상단의 php소스 부분에 진한글씨의 내용을 추가

<?
include_once("./_common.php");

if (!$is_member)
    alert("로그인 후 충전해 주십시오.", "$g4[bbs_path]/login.php?url=".urlencode("$g4[cont_path]/period10_charge.php"));

$g4[title] = "기간충전 결과";
include_once("_head.php");

$sql = " select * from $g4[cont4_member_period] where mb_id = '$member[mb_id]' ";
$mp_row = sql_fetch($sql);

$to_day = $g4['time_ymd'];
$mp_last_date = $mp_row[mp_last_date];
 
//해당 아이디의 레벨 조회
$sql_member = " select * from $g4[member_table] where mb_id = '$member[mb_id]' ";
$mp_row_member = sql_fetch($sql_member);
$mb_level = $mp_row_member[mb_level];

if ($mb_level < 10) { //최고관리자는 레벨이 변경될 수없음.
  if($to_day > $mp_last_date){$new_level = 2;}//일반회원
  else if($to_day <= $mp_last_date){$new_level = 3;}//정회원
  if ($mb_level != $new_level) {      
  // 레벨변경
   $sql_level = " update $g4[member_table]
                     set mb_level = '$new_level'
      where mb_id = '$member[mb_id]' ";
      sql_query($sql_level);
  }
}
?>


2. 충전 후 기간이 만료될 시 다시 레벨을 내려주기 위해서 로그인할때마다 충전기간을 조회하여 레벨등급을 수정합니다.
아래 조명현님의 글내용을 수정하여 올립니다.
/gnuboard4/bbs/login_check.php 파일 하단부부분에 진한글씨 부분의 내용을 추가

if ($auto_login) {
    // 3.27
    // 자동로그인 ---------------------------
    // 쿠키 한달간 저장
    $key = md5($_SERVER[SERVER_ADDR] . $_SERVER[REMOTE_ADDR] . $_SERVER[HTTP_USER_AGENT] . $mb[mb_password]);
    set_cookie('ck_mb_id', $mb[mb_id], 86400 * 31);
    set_cookie('ck_auto', $key, 86400 * 31);
    // 자동로그인 end ---------------------------
} else {
    set_cookie('ck_mb_id', '', 0);
    set_cookie('ck_auto', '', 0);
}

//로그인시 충전기간 확인하여 레벨자동등업
include_once("$g4[path]/contents.config.php");
//충전기간조회
$sql = " select * from $g4[cont4_member_period] where mb_id = '$mb_id' ";
$mp_row = sql_fetch($sql);

$to_day = $g4['time_ymd'];
$mp_last_date = $mp_row[mp_last_date];

//레벨조회
$sql_member = " select * from $g4[member_table] where mb_id = '$mb_id' ";
$mp_row_member = sql_fetch($sql_member);
$mb_level = $mp_row_member[mb_level];

//충전기간이 오늘날자보다 작으면 $new_level = 2, 크면 $new_level = 3
//조회한 아이디의 레벨과 $new_level 이 같지않으면 레벨 수정

if ($mb_level < 10) { //최고관리자는 레벨이 변경될 수없음.
  if($to_day > $mp_last_date){$new_level = 2;}//일반회원
  else if($to_day <= $mp_last_date){$new_level = 3;}//정회원
  if ($mb_level != $new_level) {      
  // 레벨변경
   $sql_level = " update $g4[member_table]
                     set mb_level = '$new_level'
      where mb_id = '$mb_id' ";
      sql_query($sql_level);
  }
}
if ($url)
{
    $link = urldecode($url);
    // 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
    if (preg_match("/\?/", $link))
        $split= "&";
    else
        $split= "?";

    // $_POST 배열변수에서 아래의 이름을 가지지 않은 것만 넘김
    foreach($_POST as $key=>$value)
    {
        if ($key != "mb_id" && $key != "mb_password" && $key != "x" && $key != "y" && $key != "url")
        {
            $link .= "$split$key=$value";
            $split = "&";
        }
    }
}


else
$link = $g4[path];
goto_url($link);
?>

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

컨텐츠몰4 질답

102건
+
분류 제목 글쓴이 날짜 조회
질문 13-05-24 조회 2,857
제안 13-01-24 조회 3,345
제안 12-03-04 조회 2,736
질문 11-06-13 조회 3,735
제안 11-01-05 조회 7,132
질문 10-12-07 조회 4,509
질문 10-12-01 조회 3,756
질문 10-12-01 조회 3,689
버그 10-11-27 조회 5,264
질문 10-10-07 조회 3,155
질문 10-09-26 조회 4,439
질문 10-09-17 조회 3,372
질문 10-08-16 조회 3,382
질문 10-08-11 조회 3,487
질문 10-06-28 조회 3,783
질문 10-06-24 조회 3,312
버그 10-06-09 조회 3,615
질문 10-03-17 조회 3,837
버그 10-03-04 조회 3,320
버그 10-02-23 조회 3,532