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

동일한 코멘트 작성은 불가능 을 전체로? 채택완료

북마크스 4년 전 조회 2,024

혹시 동일한 코멘트작성을 모든 게시판에 못하게 막을 수있는방법이 있을까요?

bbs/write_comment_update.php

파일 찾아보니까

 

if($member['mb_id']) { $sql = "select wr_id from $write_table where mb_id='{$member['mb_id']} and wr_content='$wr_content'"; $row = sql_fetch($sql); if($row['wr_id']) alert("동일한 코멘트 작성은 불가능합니다.");

이런소스가있는데

해당 내용은 같은 페이지의 에서만 작동되는거같은데 모든 게시판에서도 작동되게할라면

어떻게 추가? 변경해야될까요?

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

답변 3개

채택된 답변
+20 포인트

가장 간단한 방법은

loop( 모든 게시판 as $write_bbs ) {

if($member['mb_id']) { $sql = "select wr_id from $write_bbs where mb_id='{$member['mb_id']} and wr_content='$wr_content'"; $row = sql_fetch($sql); if($row['wr_id']) alert("동일한 코멘트 작성은 불가능합니다.");

}

 

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

답변에 대한 댓글 3개

북마크스
4년 전
loop( 모든 게시판 as $write_bbs ) {
모든 게시판이라는게 게시판이름을 다 적어놔야하는건가요?
엑스엠엘
4년 전
적용하는 게시판만 적으셔도 됩니다.
배열로 만드세요.
북마크스
4년 전
loop( "free_board" || "gallery" as $write_bbs ) {
이렇게 해보니 반응은 없고 (동일댓글 작성됨)
loop( free_board as $write_bbs ) {
이렇게 해봐도 별다른 반응없이 게시판내 동일한 댓글 작성이 되네요.

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

4년 전

1) 게시판 구분 없이 댓글 내용만 저장하는 테이블 추가 생성 ex. comment (칼럼 bo_table, wr_id, wr_content)

 

2) 댓글 등록시 해당 테이블에도 내용만 중복 저장

 

3) 중복여부 체크시 해당 테이블로 체크

select count(*) from comment where wr_content = '{$wr_content}'

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

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

foreach( array( "free_board","gallery") as $write_bbs_tmp ) {

....

}

이런 식으로 하시고 $write_bbs 변수명은 다른 곳에서 쓰이니 다른 변수명을 쓰셔야 합니다.

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

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

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

로그인