이전 목록 다음
채택완료

댓글 작성시 포인트 차감을 설정했을경우 포인트가 없으면 댓글 등록안되게 하는법 있을까요??

2016-06-23 (목) 19:59:04 2,746

아래는 그누5 기본에서 가져왔는데요

제 게시판의 경우 댓글 작성시 포인트를 차감하고

그 포인트가 없으면 경고를 띄운다음에 댓글이 작성되지 않아야 하는데

경고문구는 뜨는데 댓글은 작성이 됩니다..

어디를 수정해야 할까요??

write_comment_update.skin.php 내용

Copy
// 댓글쓰기 포인트설정시 회원의 포인트가 음수인 경우 댓글을 쓰지 못하던 버그를 수정 (곱슬최씨님)    $tmp_point = ($member['mb_point'] > 0) ? $member['mb_point'] : 0;    if ($tmp_point + $board['bo_comment_point'] < 0 && !$is_admin)        alert('보유하신 포인트('.number_format($member['mb_point']).')가 없거나 모자라서 댓글쓰기('.number_format($board['bo_comment_point']).')가 불가합니다.\\n\\n포인트를 적립하신 후 다시 댓글을 써 주십시오.');

포인트가 없으면 글이 등록 안되었으면 합니다.

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2016-06-23 (목) 21:40:19
write_comment_update.skin.php 파일은 이미 댓글이 해당 테이블에 입력이 된 후에 include가 되어 있습니다.

그래서 포인트로 댓글 등록이 안 되게 하시려면 그 윗단에서 처리를 해야 하는데요, 그러려면 저 파일이 아니라 write_comment_update.head.skin.php 이 파일을 생성해서 만들어야 합니다.

물론 write_comment_update.skin.php 이 파일에 넣으신 거는 댓글 입력 후에 포인트 차감을 해야 하니까 그대로 두셔야 하겠네요.

아까 그 내용과 이어진다면 댓글 입력 페이지에서 hidden으로 넘기는 wr_point에 현재 글에 댓글을 달 수 있는 포인트가 있을 테니 이걸 그대로 넘겨서 댓글을 다는 회원의 보유 포인트와 비교하면 될 것 같습니다. 

write_comment_update.head.skin.php 파일을 생성합니다. 

<?

if($_POST['wr_point'] > $member['mb_point']) {

   alert("포인트가 부족합니다."); 

답변에 대한 댓글 1개

2016-06-23 (목) 22:02:50
감사해요^^

관리자 페이지에서는 정한 포인트 보다 없으면 게시글이 안써지는데
별도 여분필드 포인트로 하면 경고문구는 뜨는데 댓글은 써지더라구요.

자세한 설명까지 너무나 감사합니다^^

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