전체 게시판에서 회원별로 댓글 2개까지만 쓸 수 있게 가능할까요?

전체 게시판에서 회원별로 댓글 2개까지만 쓸 수 있게 가능할까요?

QA

전체 게시판에서 회원별로 댓글 2개까지만 쓸 수 있게 가능할까요?

본문

현재 아래 소스로 회원별로 각 게시글에 댓글을 한개씩만 쓸 수 있게 만들었습니다.

그런데 동시에 게시판 전체에서 회원별로 댓글을 2개까지만 달게 할 수 있을까요?

 

전문가님들의 도움 부탁드립니다....ㅠ.ㅠ

 

<? 
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 

$mb_id  = $member['mb_id']; // g5_write_xxx 필드에 mb_id가 있어서 없어도 무방한듯
$sql    = " select count(*) as cnt from $write_table
                where wr_parent = '$wr_id' and wr_is_comment ='1'
                and mb_id = '$mb_id' ";
$row    = sql_fetch($sql);
$sql2   = " delete from  $write_table where wr_is_comment ='1' and wr_id = '$comment_id' ";
//echo $sql; exit;
//echo $sql2; exit;
if ($row['cnt'] > "1" ){
        sql_query($sql2); //작성한 댓글 삭제
        sql_query(" update {$write_table} set wr_comment = wr_comment - 1, wr_last = '{$row['wr_last']}' where wr_id = '{$write['wr_parent']}' ");
        alert('수강신청 한번만 가능합니다.');
        exit;
}
?> 
 

이 질문에 댓글 쓰기 :

답변 3


<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 
 
$mb_id = $member['mb_id']; 
$sql = " 
  select count(*) as cnt 
    from {$write_table}
   where wr_is_comment = '1'
     and mb_id = '{$mb_id}' 
";
 
$row = sql_fetch($sql);
 
if ($row['cnt'] > 2 ) {    
  alert('현 게시판에서 총 댓글은 2개까지만 작성할 수 있습니다.');  
}

그렇다면 전체 게시판에 댓글 개수를 2개로 제한한다면 게시판 테이블을 다 불러와서 카운팅해서 처리해야 하는 부분이 있는데 그 방식은 체크하는 부분가운데 데이터가 많아지만 딜레이가 생길수 있기때문에
댓글 카운트를 회원테이블이 구분필드를 하나두어서 댓글 등록시 카운팅을 올려 체크하는 방식을 하시는게 체크하고 처리하는 과정이 부하를 덜 먹게 처리할듯 보입니다.

용도가 수강신청이면

수강신청용 테이블을 하나 만들어 보세요.

답변을 작성하시기 전에 로그인 해주세요.
전체 71
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT