오랫동안 로그인을 하지 않았거나 설정된 기간 뒤에 포인트 소멸 정보
오랫동안 로그인을 하지 않았거나 설정된 기간 뒤에 포인트 소멸
본문
skin/member/basic/login_check.skin.php 에 추가해주세요.
(사용하는 스킨이 basic이 아니라면 사용하시는 스킨에 따라 변경해주세요.)
(2008년 12월 24일 오전 10시 15분 수정됨) - $member → $mb
(2009년 1월 8일 오전 11시 30분 수정됨) - 3번 항목 추가
1. 90일 지난 포인트 자동 삭제
2. 30일간 로그인 하지않으면 1000포인트 삭감
3. 30일간 로그인하지 않을 경우 일정 비율로 포인트 삭감
(사용하는 스킨이 basic이 아니라면 사용하시는 스킨에 따라 변경해주세요.)
(2008년 12월 24일 오전 10시 15분 수정됨) - $member → $mb
(2009년 1월 8일 오전 11시 30분 수정됨) - 3번 항목 추가
1. 90일 지난 포인트 자동 삭제
if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 90; // 삭제될 기간 설정
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
// 포인트 내역 삭제 (0포인트 이하 제외)
$sql = " delete from $g4[point_table] where mb_id = '$mb_id' and po_datetime < '$expire' and po_point > 0 ";
sql_query($sql);
}
$expire_day = 90; // 삭제될 기간 설정
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
// 포인트 내역 삭제 (0포인트 이하 제외)
$sql = " delete from $g4[point_table] where mb_id = '$mb_id' and po_datetime < '$expire' and po_point > 0 ";
sql_query($sql);
}
2. 30일간 로그인 하지않으면 1000포인트 삭감
if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 30; // 삭감될 기간 설정
$expire_point = 1000; // 삭감 포인트 설정
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_id from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($mb_id == $row[mb_id]) insert_point($mb_id, $expire_point*(-1), "{$expire_day}일 이상 로그인 안 함");
}
$expire_day = 30; // 삭감될 기간 설정
$expire_point = 1000; // 삭감 포인트 설정
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_id from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($mb_id == $row[mb_id]) insert_point($mb_id, $expire_point*(-1), "{$expire_day}일 이상 로그인 안 함");
}
3. 30일간 로그인하지 않을 경우 일정 비율로 포인트 삭감
if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
추천
9
9
댓글 22개
안녕하세요. 요즘 포인트내역때문에 정말 골치아프게 되었는데요,
혹시, 제가 생각하는 포인트 자동 소멸 기능인지 여쭤봅니다.
위에서 말씀하신것처럼, 소멸기간설정에서 3개월로 하면, 이전 데이터 내역은 삭제가 되고,
삭제되는 시점의 합계가 기록되어, 내역만 없어지는것 맞는지요.
이전의 포인트들이 소멸되는건가요? 아니면, 내역만 없어지는건가여?
죄송합니다. 현재 사이트가 규모가 커지다 보니, 포인트 자동 소멸기능은 필요한데,
막상 사용하기가 겁이나서 실례지만, 여쭤봅니다.
혹시, 제가 생각하는 포인트 자동 소멸 기능인지 여쭤봅니다.
위에서 말씀하신것처럼, 소멸기간설정에서 3개월로 하면, 이전 데이터 내역은 삭제가 되고,
삭제되는 시점의 합계가 기록되어, 내역만 없어지는것 맞는지요.
이전의 포인트들이 소멸되는건가요? 아니면, 내역만 없어지는건가여?
죄송합니다. 현재 사이트가 규모가 커지다 보니, 포인트 자동 소멸기능은 필요한데,
막상 사용하기가 겁이나서 실례지만, 여쭤봅니다.

1번 팁은 포인트 내역과 포인트가 같이 소멸됩니다.
포인트는 그대로 유지하고 내역만 없애고 싶으시면 관리자 화면에 포인트 관리 화면에서 javascript:point_clear(); 를 주소창에 입력해보세요. ^^
clear_point 였나;;;
여튼.. 입력해보시면 아이디당 최근 50개를 제외한 나머지 내역이 한개로 합쳐집니다. ^^
포인트는 그대로 유지하고 내역만 없애고 싶으시면 관리자 화면에 포인트 관리 화면에서 javascript:point_clear(); 를 주소창에 입력해보세요. ^^
clear_point 였나;;;
여튼.. 입력해보시면 아이디당 최근 50개를 제외한 나머지 내역이 한개로 합쳐집니다. ^^
감사합니다.

javascript:point_clear();
가 맞네요. ^^ 감사합니다~
가 맞네요. ^^ 감사합니다~
select mb_id from g4_point where mb_id = 'rkdancl1' and mb_today_login < '2008-11-23 18:52:36'
1054 : Unknown column 'mb_today_login' in 'where clause'
error file : /bbs/login_check.php
이렇게 나오네용 스킨에 추가하는것 맞나용 왜안되느지모르겠습니다
1054 : Unknown column 'mb_today_login' in 'where clause'
error file : /bbs/login_check.php
이렇게 나오네용 스킨에 추가하는것 맞나용 왜안되느지모르겠습니다

죄송합니다.
1번에서 2번으로 복사해서 수정하다보니 테이블 변경을 깜빡했네요.
수정되었습니다. ^^;
1번에서 2번으로 복사해서 수정하다보니 테이블 변경을 깜빡했네요.
수정되었습니다. ^^;
감사드립니다 추천은 진즉했씁니다~
이렇게 지정된 포인트 말고,
가지고 있는 포인트의 몇퍼센트(예를들어 30%) 를 줄인다고 하면 어디를 어떻게 손봐야 하는지 아시는 분 가르쳐 주세요 ㅠ
가지고 있는 포인트의 몇퍼센트(예를들어 30%) 를 줄인다고 하면 어디를 어떻게 손봐야 하는지 아시는 분 가르쳐 주세요 ㅠ

추가하였습니다~

추천합니다...
잘쓰겠습니다.
감사합니다.

괜찮네요..바로 테스트 해봐야징
감사합니다 .잘사용하겠습니다.^^
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
?>
if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
입력하는것이 맛나요?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
?>
if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
입력하는것이 맛나요?
이렇게 해보니 로그인할때 if(substr($mb['mb_today_login'], 0, 10) != $g4['time_ymd']) { // 첫로그인일때만
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
그냥 쭉 보였다 살아지는데 ㅠ
$expire_day = 30; // 삭감될 기간 설정
$expire_percent = 30; // 삭감될 퍼센티지
$storage_point = 1000; // 보존될 포인트(보존될 포인트 이하면 삭감하지 않음)
$expire = date("Y-m-d H:i:s", $g4[server_time]-($expire_day*24*60*60));
$sql = " select mb_point from $g4[member_table] where mb_id = '$mb_id' and mb_today_login < '$expire' ";
$row = sql_fetch($sql);
if($row[mb_point] > $storage_point) insert_point($mb_id, ceil($row[mb_point]/100*$expire_percent*(-1)), "{$expire_day}일 이상 로그인 안 함");
}
그냥 쭉 보였다 살아지는데 ㅠ

앞 뒤에 <?
?> 감싸주셔요~
?> 감싸주셔요~
`

?>
위 쪽에 넣으셔야 됩니다.
위 쪽에 넣으셔야 됩니다.
일정기간 로그인 안하면 포인트 소멸

하나만 여쭈어볼께요
포인트 소멸 했다는 기록을 포인트 내역에 기록할수 있을까요?
예를 들어 포인트 소멸기간을 1년 365일로 했을때
오늘 로그인을 하면 일년전 데이터가 사라지잖아요
데이터는 그대로 있고 소멸되는 기록을 하는데 해당 "데이터명+소멸" "-포인트" 이렇게 할수는 없을까요??
포인트 소멸 했다는 기록을 포인트 내역에 기록할수 있을까요?
예를 들어 포인트 소멸기간을 1년 365일로 했을때
오늘 로그인을 하면 일년전 데이터가 사라지잖아요
데이터는 그대로 있고 소멸되는 기록을 하는데 해당 "데이터명+소멸" "-포인트" 이렇게 할수는 없을까요??
좋습니다.감사합니다.