insert_point 함수 중 채택완료
</p>
<p> // 이미 등록된 내역이라면 건너뜀
if ($rel_table || $rel_id || $rel_action)
{
$sql = " select count(*) as cnt from {$g5['point_table']}
where mb_id = '$mb_id'
and po_rel_table = '$rel_table'
and po_rel_id = '$rel_id'
and po_rel_action = '$rel_action' ";
$row = sql_fetch($sql);
if ($row['cnt'])
return -1;
}</p>
<p>
lib/common.lib.php
위 파일의 insert_point 함수 중에서 $rel_table 또는 $rel_id 또는 $rel_action
변수가 중복되는 것이 1개라도 있으면 포인트를 지급하지 않고 return -1 합니다
sql 서치 구문을 활용하기 위해
insert_point($member['mb_id'], $win, "승리", "@good", $member['mb_id'], G5_TIME_YMD);
위 처럼 모든 테이블을 다 활용하는데 포인트 획득을 반복적으로 해야해서
위 return -1을 막아야합니다.
10번 째 라인
if ($row['cnt'] && $rel_id != @good)
처럼 위와 같이 바꾸면 정상적으로 되긴 한데, common.lib.php (코어) 파일을 수정하기는 싫네요 ㅜㅜ
다른 방법 없을 지 알려주시면 감사하겠습니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
6년 전
$rel_action 값을 계속 변경해서 넘기면 됩니다.
예) $rel_action = date('Y-m-d H:i:s');
로그인 후 평가할 수 있습니다
답변에 대한 댓글 5개
�
6년 전
M
Modify
6년 전
우선 답변 감사합니다.
G5_TIME_YMD 상수를 이용하는 이유는 일일 제한 횟수를 두기 위해서 입니다.
G5_TIME_YMDHIS 상수를 이용하는 경우 뒤 HIS를 제외한 YMD만 서치가 되지 않습니다ㅠ
다른 방법 조언받고 싶습니다.
G5_TIME_YMD 상수를 이용하는 이유는 일일 제한 횟수를 두기 위해서 입니다.
G5_TIME_YMDHIS 상수를 이용하는 경우 뒤 HIS를 제외한 YMD만 서치가 되지 않습니다ㅠ
다른 방법 조언받고 싶습니다.
M
Modify
6년 전
추가로
[code]
$time = G5_TIME_YMD;
$sql = " select count(*) as cnt from {$g5['point_table']}
where po_rel_table = '@good'
and po_rel_action = '$time'
and mb_id = '$member[mb_id]' ";
$row = sql_fetch($sql);
[/code]
위 코드 처럼 g5_point의 모든 테이블을 사용하고 있어
랜덤 토큰도 활용하기 힘든 것 같습니다.
다른 방법이 있을까요?
[code]
$time = G5_TIME_YMD;
$sql = " select count(*) as cnt from {$g5['point_table']}
where po_rel_table = '@good'
and po_rel_action = '$time'
and mb_id = '$member[mb_id]' ";
$row = sql_fetch($sql);
[/code]
위 코드 처럼 g5_point의 모든 테이블을 사용하고 있어
랜덤 토큰도 활용하기 힘든 것 같습니다.
다른 방법이 있을까요?
e
6년 전
일일 제한 횟수를 두기를 원한다고 하시면서..
반복해서 포인트를 지급해야한다.
2가지가 모순된거 아닌가요??
제가 잘 이해를 못하는 건가??
반복해서 포인트를 지급해야한다.
2가지가 모순된거 아닌가요??
제가 잘 이해를 못하는 건가??
M
Modify
6년 전
제가 개발하려고자 하는 건 게임 플러그인 입니다.
일일 횟수 제한에 그 제한된 횟수동안 포인트를 지급 받아야하니
2가지를 사용하는 게 맞습니다.
insert_point 함수를 이용해서 모든 g5_point 테이블을 다 사용해서
구분과 해당 날짜 서치가 필요합니다..
일일 횟수 제한에 그 제한된 횟수동안 포인트를 지급 받아야하니
2가지를 사용하는 게 맞습니다.
insert_point 함수를 이용해서 모든 g5_point 테이블을 다 사용해서
구분과 해당 날짜 서치가 필요합니다..
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
채택
답변대기
답변대기
채택
답변대기
하지만 이 또한 중복될 가능성은 있습니다. rel_action의 db 필드 구조를 보면 varchar(255)이기때문에 꼭 Date형식만 입력될 필요는 없으므로 G5_TIME_YMDHIS와 랜덤 토큰을 함께 사용하시면 중복될 확률은 더 낮아집니다.