충전기간에 따라 레벨자동 등업 정보
제안 충전기간에 따라 레벨자동 등업- chichi1982 자기소개 아이디로 검색 회원게시물 (183.♡.♡.100)
- 3,101
본문
작업하다가 필요하게 되어 해보았는데 필요하신 분들은 수정하여 쓰셔도 좋을것같습니다.
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);
?>
댓글 전체