일일 다운로드 제한 방법은 어떻게 해야 될까요? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

일일 다운로드 제한 방법은 어떻게 해야 될까요? 정보

일일 다운로드 제한 방법은 어떻게 해야 될까요?

본문

g3에서는 나라오름님이 알려주신 bbs/download.php에
 
// 일일 다운로드 제한
$date = explode("-", $today);
$mktime = mktime('0', '0', '0', $date[1], $date[2], $date[0]);

$limit = 11;    // 다운로드 제한
if ($HTTP_COOKIE_VARS["ck_down_count"] <= $limit) {
    setcookie("ck_down_count", $HTTP_COOKIE_VARS["ck_down_count"]+1, $mktime + (60*60*24), $default[de_cookie_dir], $default[de_cookie_domain]);
} else {
    alert("일일 다운로드 횟수를 초과했습니다.");
}

 
위 소스를 삽입하면 다운로드가 제한 되어는데 g4에서는 위소스를 적용해도 다운로드가 제한 되지
않고 계속 다운로드가 가능하네요~~ 어떻게 하면 일일 다운로드를 제한 할 수 있을까요~
  • 복사

댓글 전체

제가 보기에는 $today라는 변수가 정의 되어있지 않아서 그런것 같군요

저 부분 젤 상단에

$today =date("Y-m-d");

라고 넣고 사용하면 별 무리 없이 사용되어지리라고 보입니다.

그리고 쿠키로는 악의적인 사용자를 백프로 막을수는 없습니다.

그리고 alert("일일 다운로드 횟수를 초과했습니다.");

이것 다음에 exit;

를 넣어주는 것이 좋겟네요
음 변수가 달라서 안되는 것일것입니다.

download.php에서

// 사용자 코드 실행
@include_once $board_skin_path . '/download.skin.php';

바로 윗단에 아래 코드를 붙여넣으세요

// 일일 다운로드 제한
$date = explode("-", $g4['time_ymd']);
$mktime = mktime('0', '0', '0', $date[1], $date[2], $date[0]);

$limit = 11;    // 다운로드 제한수
if ($HTTP_COOKIE_VARS["ck_down_count"] <= $limit) {

    setcookie("ck_down_count", $HTTP_COOKIE_VARS["ck_down_count"]+1, $mktime + (60*60*24), '/', $g4['cookie_domain']);
}
else {

    alert("일일 다운로드 횟수를 초과했습니다.");
}
유창화님께서 구현 방법을 마무리 하시기 전에 이미 말씀하셨듯이,
'쿠키'의 한계성도 생각해 보시기 바랍니다.

사용자 PC의 쿠키를 삭제한다면?!
웹브라우저 & 쿠키에 관한 내용만 있다면,
대다수의 사용자들은 쿠키를 삭제하고 다운로드 받을 수 있으리라 봅니다.
네 도움 말씀 감사드립니다~~
나스카님과 role님께서 말씀 하신 우려 및 추천 내용은 모두 인지 및 적용하고 있습니다!!
기본적인 프로그램밍에 대해 인지 하신 분들은 얼쩔수 없지만 대부분은 인지 하지 못하더군요!!
인지하더라도 다운로드포인트와 함께 사용하니 그래도 괜찮더군요~~
감사합니다!!
© SIRSOFT
현재 페이지 제일 처음으로