채택완료

포인트 차감 질문.

2021-07-05 (월) 00:33:51 1,881

모든 회원을 하루 한번 (24시간마다) 포인트 차감을 하고 싶습니다.

가령 하루에 한 번 -50점 포인트 차감처리 시키려면, 어떻게 하면 될까요?

아무리 검색해봐도 관련 방법이 보이지 않아 질문드립니다 ㅠ

|

답변 3개

채택된 답변
+20 포인트
Copy
$todate = date('Y-m-d');

            $sql = " select count(*) as cnt from {$g5['point_table']}

                        where mb_id = '$member['mb_id']'

                            and po_rel_table = 'day_point'

                            and po_rel_id = '$todate'

                            and po_rel_action = '차감' ";

            $row = sql_fetch($sql);

            if (!$row['cnt']) {

                $day_point = -50;

                insert_point($member['mb_id'], $day_point, $todate.' 차감', 'day_point', $todate, '차감');

            }

일단 별도 파일에 포인트 차감 로직을 구현해놓으시고, 

해당 파일을 cron 으로 실행시킬수 있게 하시면 됩니다.

웹호스팅이라면 웹호스팅사에 문의해 보시고 24시간중 원하시는 시간에 1회 실행되도록 요청 하시면 됩니다.

2021-07-05 (월) 04:21:46

크론을 써야 하겠지만

대신 트릭을 쓰자면

회원이 로그인할 때, 지난 번 포인트 차감일과 오늘 날짜를 비교해서 며칠치를 포인트 차감하는 것입니다.

이런 경우 문제는 포인트 순위를 내는 경우 문제가 될 수 있습니다.

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