테스트 사이트 - 개발 중인 베타 버전입니다

게시물에 댓글 1개만 작성하도록 처리완료 (mb_id별로) 채택완료

지티아루 7년 전 조회 2,566

많은 분들이 여러가지 아이디와 자료를 공유해주셔서

어쩌 어찌 해서 처리는 되었는데,

혹시 필요하신 분이 있을까해서

 

게시글을 작성하면..

/bbs/write_comment_update.php 를 통해서 wr_id 한건이 insert되고

하단에  334라인쯤에

// 사용자 코드 실행 @include_once($board_skin_path.'/write_comment_update.skin.php'); @include_once($board_skin_path.'/write_comment_update.tail.skin.php'); 

 

/skin/board/xxx/write_comment_update.skin.php

아래 코드를 실행하도록 처리하였습니다. 

 

wr_parent 정보에 하나 이상의 댓글(wr_is_comment=1)이면

작성한 글을 삭제하는 쿼리와 alert창을 띄우는걸로 해결했습니다.

 

일단 처리하고,

테스트는 좀 해봤는데 alert창을 띄울 때 wr_id를 삭제함으로 

추가 게시글이나 댓글 작성 시 wr_id 값이 중간 중간 빠지는 현상을 제외하고

특이사항은 없는듯합니다.

 

</p>

<p><?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p> </p>

<p>$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);</p>

<p>$sql2   = " delete from  $write_table where wr_is_comment ='1' and wr_id = '$comment_id' ";</p>

<p>//echo $sql; exit;</p>

<p>//echo $sql2; exit;</p>

<p>if ($row['cnt'] > "1" ){</p>

<p>        sql_query($sql2); //작성한 댓글 삭제

        alert('댓글은 1개만 등록이 가능합니다.');

        exit;

}

?></p>

<p>

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

답변 1개

채택된 답변
+20 포인트
f
7년 전

https://sir.kr/g5_tip">https://sir.kr/g5_tip

 

용도에 맞는 별도의 게시판이 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

지티아루
7년 전
감사합니다...참고할것이 많네요

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

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

로그인