특정 게시판에서 작성할 수 있는 게시물을 제한하고 싶습니다,
본문
안녕하세요, 왕초보입니다.
제목과 같이 특정게시판에서 작성할 수 있는 게시물의 숫자를 제한하고 싶습니다.
게시물을 2개로 제한 하였을때,
한 회원이 게시물을 2개 작성한 상태에서, 새로 작성하고자 하면 전의 글을 지우지 않고서는
작성을 할 수 없게 하고 싶은데요.
어떻게 하면되는지요?
알려주시면 감사하겠습니다.
답변 3
전체 게시판에 적용하는건 /bbs/write.php에 하시면되고요 특정 게시판에만 하고싶으시다면 /skin/board/해당게시판/write.skin.php에 하시면되요.
글쓰기 페이지 들어오면 최상단에 쿼리문 한번 돌려서 확인하시면되요.
$sql = mysql_query("select count(*) as cnt from 게시판테이블 where wr_name = '".$name."'");
$row = mysql_fetch_array($sql);
if($row[cnt] > 2){
게시글을 두개이상 작성 할 수 없습니다.
}
그러면 1개, 2개만 해당하는 거니깐 /skin/board/에 있는 basic을 복사 붙여넣기 하셔서 갯수제한에 맞는 이름을 하나씩주시고요.
해당게시판에 맞는 갯수제한으로 스킨을 변경하세요.
갯수제한 있는게 나중에 또 나올지도 모르고, 게시판 아이디가 변경될지도 모르는데 그런경우엔 조건문을 계속 추가하거나 변경해야하니깐 차라리 스킨을 새로 만드시는게 좋아요.
그냥 조건문 추가한다면 해당 게시판 아이디일때 몇개로 제한한다 하시면되요.
아래 소스는 게시판마다 제한주는거에요.
$sql = mysql_query("select count(*) as cnt from 게시판테이블 where wr_name = '".$name."'");
$row = mysql_fetch_array($sql);
if($bo_table == '갯수1개게시판테이블' && $row[cnt] > 1){
게시글을 한개이상 작성 할 수 없습니다.
}else if($bo_table == '갯수2개게시판테이블' && $row[cnt] > 2){
게시글을 두개이상 작성 할 수 없습니다.
}
쿼리문을 잘못작성하셨거나 쿼리문 작성하신 변수 $sql = ... 이거를 $row = mysql_fetch_array($sql); 이렇게 넣어야 하는데 잘못넣으신거에요.
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in
mysql_fetch_array()를 하려고 하는데 값이 없다 1개라도 넣어라. 이거에요.