포인트로 다운로드하고 다시 다운로드 받을 경우 에러
본문
포인트로 다운로드하고 다시 다운로드 받을 경우 에러
보유 포인트가 190일 경우
게시판의 다운로드 포인트를 -100으로 해뒀는데
1회 다운로드 받을 경우 포인트가 정상적으로 빠지고
다운로드 되고 (남은 포인트 90)
2회 다시 다운로드 받을려고 하면 포인트가 없다고 다운로드가 되지 않네요
만약 보유 포인트가 100이상 있을 경우엔 다운로드가 되고 포인트 차감은 되지 않습니다
문제는 다운로드 포인트가 -100 일 경우
재다운로드 받기 위해서 포인트 차감은 없지만 100 이상의 보유 포인트가 있어야 한다는건데 ㅠㅠ
왜 이럴까요 ?ㅠㅠ
bbs/download.php
// 이미 다운로드 받은 파일인지를 검사한 후 게시물당 한번만 포인트를 차감하도록 수정
$ss_name = 'ss_down_'.$bo_table.'_'.$wr_id;
if (!get_session($ss_name))
{
// 자신의 글이라면 통과
// 관리자인 경우 통과
if (($write['mb_id'] && $write['mb_id'] == $member['mb_id']) || $is_admin)
;
else if ($board['bo_download_level'] >= 1) // 회원이상 다운로드가 가능하다면
{
// 다운로드 포인트가 음수이고 회원의 포인트가 0 이거나 작다면
if ($member['mb_point'] + $board['bo_download_point'] < 0)
alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 다운로드('.number_format($board['bo_download_point']).')가 불가합니다.\\n\\n포인트를 적립하신 후 다시 다운로드 해 주십시오.');
// 게시물당 한번만 차감하도록 수정
insert_point($member['mb_id'], $board['bo_download_point'], "{$board['bo_subject']} $wr_id 파일 다운로드", $bo_table, $wr_id, "다운로드");
}
// 다운로드 카운트 증가
$sql = " update {$g5['board_file_table']} set bf_download = bf_download + 1 where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$no' ";
sql_query($sql);
set_session($ss_name, TRUE);
}