사용자의 글 작성수 구하기(하루에 한번만 글작성) 정보
사용자의 글 작성수 구하기(하루에 한번만 글작성)관련링크
첨부파일
본문
그누보드3에 제공한 팁을 g4용으로 변경한것입니다.
부가적인것은 gnu3용을 참고하세요
http://www.sir.co.kr/bbs/board.php?bo_table=g3_tiptech&wr_id=3122
//#######################################################
// usage :
// threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
// threes_rowcount($bo_table, $member[mb_id], 0, 1, 1, 1);
// threes_rowcount()의 6개 인수설명
// 1. 게시판 테이블명($bo_table)
// 2. 사용자 ID($member[mb_id])
// 3. 기간설정(all이면 전체, 숫자이면 숫자일전부터 현재까지 조회, 0이면 오늘)
// 4. 1이면 새글(원문)에서 체크, 0이면 체크안함
// 5. 1이면 답글에서 체크, 0이면 체크안함
// 6. 1이면 코멘트에서 체크, 0이면 체크안함
//#######################################################
## 적용예제 (하루에 한번만 글작성)
## 사용자별로 설정기간동안 설정한 이상의 글을 작성하지 못하도록 하고자 할경우
1. lib 파일 설정
threes_rowcount.lib.php를 extend 디렉토리에 넣는다.
2. bbs/write_update.php, bbs/write_comment_update.php에 글 작성수 체크 기능을 부여한다.
(그누보드 패치시마다 확인하여 write_udpate.php, write_comment_update.php가 변경될때마다 적용해야 합니다.)
2-1) bbs/write_update.php 수정
소스 상단의 $notice_array 설정하는곳 아래쪽에 if 문을 하나 추가하시고 아래쪽의 3번에 있는 내용을 필요에 맞게 수정해서 추가하세요.
$notice_array = explode("\n", trim($board[bo_notice]));
if ($w == '' || $w == 'r') {
#####################################################
### 이곳에 아래의 3번을 참고하여 내용을 삽입하세요
#####################################################
}
2-2) bbs/write_comment_update.php 수정
소스 상단의 "코멘트를 쓸 권한이 없습니다" 위쪽에 3번에 있는 내용을 필요에 맞게 수정해서 추가하세요.
if ($w == "c" || $w == "cu")
{
#####################################################
### 이곳에 아래의 3번을 참고하여 내용을 삽입하세요
#####################################################
if ($member[mb_level] < $board[bo_comment_level])
alert("코멘트를 쓸 권한이 없습니다.");
}
else
alert("w 값이 제대로 넘어오지 않았습니다.");
3. 위 2번에서 설명한 bbs/write_update.php, bbs/write_comment_update.php에 넣을 보기
3-1. board_1 테이블에 사용자가 새글,답글,코멘트에서 글작성이 한번만 가능하도록 할경우
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_1' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
}
3-2. board_1, board_2 테이블에 사용자가 하루에 새글을 한번만 작성가능하게 할경우
(답글과, 코멘트는 제한없음)
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if(($bo_table == 'board_1' || $bo_table == 'board_2') && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], 0, 1, 0, 0);
if($row_count) {
alert("본 게시판은 새글작성이 하루에 한번만 가능합니다.");
}
}
3-3. board_3 테이블에 사용자가 최근 30일동안에 새글과 답글을 5번 작성가능하게 할경우
(코멘트는 제한없음)
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_3') {
$row_count = threes_rowcount($bo_table, $member[mb_id], 30, 1, 1, 0);
if($row_count > 5) {
alert("본 게시판은 새글과 답변이 30일동안 5번 까지만 가능합니다.");
}
}
3-4. 위의 3-1과 3-3를 같이 적용할경우
3-1번의 내용을 넣고, 3-3의 내용중 if를 else if로 변경한다.
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_1' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
}else if($bo_table == 'board_3' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], 30, 1, 1, 0);
if($row_count > 5) {
alert("본 게시판은 새글과 답변이 30일동안 5번 까지만 가능합니다.");
}
}
ps. 프로그램 작업하는것보다 글로 설명하는것이 더 힘들군요
혹시 의문점있으시면 코멘트 달아주십시오.
부가적인것은 gnu3용을 참고하세요
http://www.sir.co.kr/bbs/board.php?bo_table=g3_tiptech&wr_id=3122
//#######################################################
// usage :
// threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
// threes_rowcount($bo_table, $member[mb_id], 0, 1, 1, 1);
// threes_rowcount()의 6개 인수설명
// 1. 게시판 테이블명($bo_table)
// 2. 사용자 ID($member[mb_id])
// 3. 기간설정(all이면 전체, 숫자이면 숫자일전부터 현재까지 조회, 0이면 오늘)
// 4. 1이면 새글(원문)에서 체크, 0이면 체크안함
// 5. 1이면 답글에서 체크, 0이면 체크안함
// 6. 1이면 코멘트에서 체크, 0이면 체크안함
//#######################################################
## 적용예제 (하루에 한번만 글작성)
## 사용자별로 설정기간동안 설정한 이상의 글을 작성하지 못하도록 하고자 할경우
1. lib 파일 설정
threes_rowcount.lib.php를 extend 디렉토리에 넣는다.
2. bbs/write_update.php, bbs/write_comment_update.php에 글 작성수 체크 기능을 부여한다.
(그누보드 패치시마다 확인하여 write_udpate.php, write_comment_update.php가 변경될때마다 적용해야 합니다.)
2-1) bbs/write_update.php 수정
소스 상단의 $notice_array 설정하는곳 아래쪽에 if 문을 하나 추가하시고 아래쪽의 3번에 있는 내용을 필요에 맞게 수정해서 추가하세요.
$notice_array = explode("\n", trim($board[bo_notice]));
if ($w == '' || $w == 'r') {
#####################################################
### 이곳에 아래의 3번을 참고하여 내용을 삽입하세요
#####################################################
}
2-2) bbs/write_comment_update.php 수정
소스 상단의 "코멘트를 쓸 권한이 없습니다" 위쪽에 3번에 있는 내용을 필요에 맞게 수정해서 추가하세요.
if ($w == "c" || $w == "cu")
{
#####################################################
### 이곳에 아래의 3번을 참고하여 내용을 삽입하세요
#####################################################
if ($member[mb_level] < $board[bo_comment_level])
alert("코멘트를 쓸 권한이 없습니다.");
}
else
alert("w 값이 제대로 넘어오지 않았습니다.");
3. 위 2번에서 설명한 bbs/write_update.php, bbs/write_comment_update.php에 넣을 보기
3-1. board_1 테이블에 사용자가 새글,답글,코멘트에서 글작성이 한번만 가능하도록 할경우
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_1' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
}
3-2. board_1, board_2 테이블에 사용자가 하루에 새글을 한번만 작성가능하게 할경우
(답글과, 코멘트는 제한없음)
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if(($bo_table == 'board_1' || $bo_table == 'board_2') && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], 0, 1, 0, 0);
if($row_count) {
alert("본 게시판은 새글작성이 하루에 한번만 가능합니다.");
}
}
3-3. board_3 테이블에 사용자가 최근 30일동안에 새글과 답글을 5번 작성가능하게 할경우
(코멘트는 제한없음)
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_3') {
$row_count = threes_rowcount($bo_table, $member[mb_id], 30, 1, 1, 0);
if($row_count > 5) {
alert("본 게시판은 새글과 답변이 30일동안 5번 까지만 가능합니다.");
}
}
3-4. 위의 3-1과 3-3를 같이 적용할경우
3-1번의 내용을 넣고, 3-3의 내용중 if를 else if로 변경한다.
# $bo_table에서 $member[mb_id]에게 글작성수 체크하기
if($bo_table == 'board_1' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], all, 1, 1, 1);
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
}else if($bo_table == 'board_3' && !$is_admin) {
$row_count = threes_rowcount($bo_table, $member[mb_id], 30, 1, 1, 0);
if($row_count > 5) {
alert("본 게시판은 새글과 답변이 30일동안 5번 까지만 가능합니다.");
}
}
ps. 프로그램 작업하는것보다 글로 설명하는것이 더 힘들군요
혹시 의문점있으시면 코멘트 달아주십시오.
추천
3
3
댓글 14개
bbs/write_update.php, bbs/write_comment_update.php 을 수정하면 모든 게시판에 적용되는 것 같은데
각각의 게시판 스킨별로 적용할 수는 없을까요?
하루에 한번만 글작성하게 하면 제한이 좀 심한 느낌이 드는데 하루 5번 이내로 제한할려면 어떻게 해야 하나요?
물어보기만해서 죄송하군요
각각의 게시판 스킨별로 적용할 수는 없을까요?
하루에 한번만 글작성하게 하면 제한이 좀 심한 느낌이 드는데 하루 5번 이내로 제한할려면 어떻게 해야 하나요?
물어보기만해서 죄송하군요
3-1,3-2,3-3,3-4가 특정 게시판 적용 설명 예입니다.
다섯번 체크하시는것의 위의 예에서 다음 내용을 변경해보세요.
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
if($row_count > 5) { // 6번재부터 아래 메세지 출력
alert("본 게시판은 글작성이 다섯번만 가능합니다.");
}
if($row_count) {
alert("본 게시판은 글작성이 한번만 가능합니다.");
}
if($row_count > 5) { // 6번재부터 아래 메세지 출력
alert("본 게시판은 글작성이 다섯번만 가능합니다.");
}
잘쓸께요
감사히 잘쓰겠습니다!!!
좋은 자료 감사드립니다.. ^^*
하루 글제한
좋은 팁 감사합니다!
우와 대단
잘 사용하겠습니다. 감사합니다.
감사합니다. ^^*
감사합니다
회원당 작성글 수
하루에 한번 글쓰기