채택완료

추천 취소 문의드립니다

2016-12-17 (토) 00:39:13 3,841
검색해도 자료가 별로 없네요
버튼을 누르면 추천했던것을 다시 취소하고 싶은데요


검색해서 본것중에

/bbs/good.php 67 라인에 } 닫는 부분을 아래처럼 하면 관리자가 삭제를 할 수 있습니다.

버튼은 $good 값이 굿이나 노굿이 아닌 다른 값일 때 실행되도록 되어 있습니다.

} else {
// 추천 삭제

// 관리자만
if ($is_admin) {

// 추천, 비추천 일괄 삭제
$sql = " delete from $g4[board_good_table] where bo_table = '$bo_table' and wr_id = '$wr_id' ";
sql_query($sql);

// 추천, 비추천 0 으로 변경
$sql = " update $write_table set wr_good = '0', wr_nogood = '0' where wr_id = '$wr_id' ";
sql_query($sql);


echo "<script language='JavaScript'> alert('이 글의 추천을 초기화 하셨습니다.');</script>";

}

}


해당글은 관리자가 초기화하는것 같은데
조건을 다르게 해서
저 코드를 넣는게 맞나요?
또한 테이블도 따로 만들어줘야 하나여?
뷰게시판 버튼 에이젝스 구현이 아닌 (나중에 해결할 예정)
상위폴더에 있는 추천취소 , 테이블 관련 부분입니다


어떻게 해야 추천이 취소될수 있을지 팁좀 부탁드립니다
|

답변 3개 / 댓글 1개

채택된 답변
+20 포인트
2016-12-17 (토) 01:59:51

/bbs/good.php에 보시면 코드중에 아래와 같은 코드가 있습니다.

Copy
if ($row['bg_flag'])        {            if ($row['bg_flag'] == 'good')                $status = '추천';            else                $status = '비추천';             alert("이미 $status 하신 글 입니다.");        }        else        {            // 추천(찬성), 비추천(반대) 카운트 증가            sql_query(" update {$g5['write_prefix']}{$bo_table} set wr_{$good} = wr_{$good} + 1 where wr_id = '{$wr_id}' ");            // 내역 생성            sql_query(" insert {$g5['board_good_table']} set bo_table = '{$bo_table}', wr_id = '{$wr_id}', mb_id = '{$member['mb_id']}', bg_flag = '{$good}', bg_datetime = '".G5_TIME_YMDHIS."' ");             if ($good == 'good')                $status = '추천';            else                $status = '비추천';             $href = './board.php?bo_table='.$bo_table.'&amp;wr_id='.$wr_id;             alert("이 글을 $status 하셨습니다.", '', false);        }

여기보면 추천한 내역이 있는지 체크해서

alert("이미 $status 하신 글 입니다."); 경고창을 띄우는 부분이 있는데 이부분에서 

추천취소 기능을 추가개발하시면 됩니다.

경고창 출력 코드 대신 추천 역순으로 insert는 delete로 update 카운트 +1 된 부분은 -1로

하시면 됩니다.

 

 

답변에 대한 댓글 1개

감사합니다
2017-01-10 (화) 18:14:27

배추베이직 스킨은 아래 마이위트에서 배포합니다.

http://www.miwit.com/ 

배추베이직 게시판 스킨에 추천 취소 기능이 있습니다. 

해당 스킨 연구해 보세요.

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