채택완료

하루 다운로드 갯수를 제한하려고 합니다.

2014-07-18 (금) 16:37:00 7,112

트래픽 문제로 다운로드 갯수를 제한하려고 하는데 어디를

고쳐야 하나요? 

|

답변 4개 / 댓글 2개

채택된 답변
+20 포인트
2014-07-18 (금) 17:10:51

​/www/bbs/download.php 중에서 



// 다운로드 차감일 때 비회원은 다운로드 불가
if($board['bo_download_point'] < 0 && $is_guest)
    alert('다운로드 권한이 없습니다.\\n회원이시라면 로그인 후 이용해 보십시오.', G5_BBS_URL.'/login.php?wr_id='.$wr_id.'&amp;'.$qstr.'&amp;url='.urlencode(G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id));

$sql = " select bf_source, bf_file from {$g5['board_file_table']} where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$no' ";
$file = sql_fetch($sql);
if (!$file['bf_file'])
    alert_close('파일 정보가 존재하지 않습니다.');

위에 부분을 이렇게 수정하시면 됩니다.

테스트 해보지는 않았습니다. 



// 다운로드 차감일 때 비회원은 다운로드 불가
if($board['bo_download_point'] < 0 && $is_guest)
    alert('다운로드 권한이 없습니다.\\n회원이시라면 로그인 후 이용해 보십시오.', G5_BBS_URL.'/login.php?wr_id='.$wr_id.'&amp;'.$qstr.'&amp;url='.urlencode(G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id));

$sql = " select bf_source, bf_file, bf_download from {$g5['board_file_table']} where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$no' ";
$file = sql_fetch($sql);
if ($file[bf_download]>10)
    alert_close('하루 다운로드 회수를 초과하였습니다.');

if (!$file['bf_file'])
    alert_close('파일 정보가 존재하지 않습니다.');
 

답변에 대한 댓글 1개

2014-07-21 (월) 18:30:54
다운로드를 하니, 양껏 다운로드 되네요 ^^
다른 문제는 없어 보입니다. 감사합니다.
2014-07-25 (금) 13:33:18

성의 있는 답변 감사합니다.

열심히 배워볼께요. 

2014-07-24 (목) 12:57:02

잉끼님 소스가 확인해 보니,

한게시물의 다운로드 카운터가 10 되면 얼터가 뜨네요.

멤버당 다운로드 카운터가 아니라, 게시물당 다운로드 카운터 소스입니다. 

답변에 대한 댓글 1개

CREATE TABLE IF NOT EXISTS `g5_member_download` (
`no` bigint(20) NOT NULL AUTO_INCREMENT,
`bo_table` varchar(20) NOT NULL,
`wr_id` int(11) NOT NULL,
`bf_no` int(11) NOT NULL,
`mb_id` varchar(20) NOT NULL,
`indate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;

위와 같이 테이블 생성하신 뒤


​/www/bbs/download.php 중에서

// 하루 10회제한
$count = sql_fetch("SELECT COUNT(*) cnt FROM g5_member_download WHERE mb_id = '{$member[mb_id]}' AND substr(indate,0, 10) = substr(now(),0, 10)");

if($count[cnt]>10)
alert('하루 다운로드 회수를 초과하였습니다.');
sql_query("INSERT INTO g5_member_download SET mb_id = '{$member[mb_id]}' , bo_table = '{$bo_table}' , wr_id = '{$wr_id}' , bf_no = '{$no}' ");
// 하루 10회제한


로 바꾸세요.
2014-07-18 (금) 17:30:50

소스를봐야될것같은대요.

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