채택완료

일정 시간(기간)이 지난 게시물은 읽기 댓글 포인트 지급 안하기

2022-05-19 (목) 22:43:16 1,277

회원들이 포인트를 얻기 위해서

오래된 글을 모두 읽고 댓글을 달고 있네요.

오래된 게시물은 읽거나 댓글을 달아도 포인트 지급을 막고싶습니다.

팁을 본거같아서 찾아봤는데 못찾겠더군요.

|

답변 1개 / 댓글 2개

채택된 답변
+20 포인트

https://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=310

이거보시고 하시면 될꺼같네요.

답변에 대한 댓글 2개

2022-05-20 (금) 08:12:37
감사합니다.
2022-05-20 (금) 12:06:47
댓글 읽기 포인트 지급은 잘 동작합니다.

그런데 글'읽기' 포인트 지급이 안되게 하려면 어디를 손봐야 할까요..?

bbs/board.php 에
[code]
// 한번 읽은글은 브라우저를 닫기전까지는 카운트를 증가시키지 않음
$ss_name = 'ss_view_'.$bo_table.'_'.$wr_id;
if (!get_session($ss_name))
{
sql_query(" update {$write_table} set wr_hit = wr_hit + 1 where wr_id = '{$wr_id}' ");

// 자신의 글이면 통과
if ($write['mb_id'] && $write['mb_id'] === $member['mb_id']) {
;
} else if ($is_guest && $board['bo_read_level'] == 1 && $write['wr_ip'] == $_SERVER['REMOTE_ADDR']) {
// 비회원이면서 읽기레벨이 1이고 등록된 아이피가 같다면 자신의 글이므로 통과
;
} else {
// 글읽기 포인트가 설정되어 있다면
if ($config['cf_use_point'] && $board['bo_read_point'] && $member['mb_point'] + $board['bo_read_point'] < 0)
alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 글읽기('.number_format($board['bo_read_point']).')가 불가합니다.\\n\\n포인트를 모으신 후 다시 글읽기 해 주십시오.');

// 오래된 글은 포인트 지급 금지 *수정* https://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=310 응용
$po_limit_days = "+3 days"; // 3일이 지난 글에 작성한 글은 포인트 지급 금지
$po_limit_times = strtotime($po_limit_days, strtotime($wr['wr_datetime']));
if (G5_SERVER_TIME <= $po_limit_times) {
insert_point($member['mb_id'], $board['bo_read_point'], ((G5_IS_MOBILE && $board['bo_mobile_subject']) ? $board['bo_mobile_subject'] : $board['bo_subject']).' '.$wr_id.' 글읽기', $bo_table, $wr_id, '읽기');
}
}

set_session($ss_name, TRUE);
}

[/code]

위처럼 수정 했더니 날짜 상관없이 아예 포인트 지급을 안하네요.

답변을 작성하려면 로그인이 필요합니다.