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와 랜덤 토큰을 함께 사용하시면 중복될 확률은 더 낮아집니다.