처음 댓글 작성시 추가포인트지급

처음 댓글 작성시 추가포인트지급

QA

처음 댓글 작성시 추가포인트지급

본문

그누사이트내 아래와같이 특정게시판 첫댓글은 

포인트를 추가지급하고싶습니다

 

댓글창에 아래와같이 문구도 출력됬으면 합니다.

 

가이드해주시면 감사합니다! 

 

3555374342_1669082737.346.jpg

이 질문에 댓글 쓰기 :

답변 3

간단히 스킨에서 처리
view_comment.skin.php

title="내용" placeholder="댓글내용을 입력해주세요"
// 부분을 아래와 같이 수정
title="내용" placeholder="<?php if($view['wr_comment']){ ?>댓글내용을 입력해주세요<?php } else { ?>처음으로 댓글 남기시면 댓글 포인트를 2배 적립해 드립니다.<?php } ?>"
 
<!-- 댓글 출력 -->
<div class="cmt_contents">
  <p>
// 부분 여기에 (즉)<p> 바로밑에 아래 코드추가
<?php
if($view['wr_comment'] == "1"){
$date = G5_TIME_YMDHIS;
$plus_point = $board['bo_comment_point'];
//$plus_point = "300"; // 위처럼 아니면 이렇게 임의 지정
$cid = $list[$i]['mb_id']; // 코멘트 등록 아이디
 
// 코멘트 등록 정보
$sqlc = " select mb_point from g5_member where mb_id = '{$cid}' ";
$rowc = sql_fetch($sqlc);
 
$wc_point_p = $rowc['mb_point'] + $plus_point;
 
$sql1 = "INSERT INTO g5_point (mb_id, po_datetime, po_content, po_point, po_expire_date, po_mb_point, po_rel_table, po_rel_id)  VALUES ('$cid','$date','{$board['bo_subject']} $wr_id-$comment_id 첫 댓글', '$plus_point','9999-12-31','$wc_point_p','$bo_table','$wr_id') ";
sql_query($sql1);
}
?>

이렇게하면 첫 댓글 단 사람만 포인트를 한번 더 주는겁니다.
그럼 2배가 되는거죠

파일 안 만들고 처리하는게 편할듯해서
저렇게 했는데 1개 달고 새로고침을 할줄이야...^^;

위 코드는 지우시고요
view_comment.skin.php 파일 글쓰기 부분에 아래 코드 넣고요.


<input type="hidden" name="is_good" value="">
위 코드 아래에 아래 코드 넣으세요.
<?php if($view['wr_comment']) { ?>
<input type="hidden" name="comment_ck_ok" value="ck_ok">
<?php } ?>

그리고
write_comment_update.skin.php
아래 코드를 위 파일 이름으로 저장 후 사용하시는 스킨 디렉토리에 업로드하고 해보세요.

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

$comment_ck_ok = $_POST['comment_ck_ok'];

if(!$comment_ck_ok){ // 체크 안하면 매번 확인하므로 체크로 한번만 실행한다.
$sql_cc = " select wr_comment from $write_table where wr_id = '$wr_id' and wr_is_comment = 0 ";
$sql_ck = sql_fetch($sql_cc);

if($sql_ck['wr_comment'] == "1"){
$date = G5_TIME_YMDHIS;
$plus_point = $board['bo_comment_point'];
//$plus_point = "300"; // 위처럼 아니면 이렇게 임의 지정

// 코멘트 등록 정보
$sqlc = " select mb_point from g5_member where mb_id = '{$mb_id}' ";
$rowc = sql_fetch($sqlc);

$wc_point_p = $rowc['mb_point'] + $plus_point;

$sql1 = "INSERT INTO g5_point (mb_id, po_datetime, po_content, po_point, po_expire_date, po_mb_point, po_rel_table, po_rel_id)  VALUES ('$mb_id','$date','{$board['bo_subject']} $wr_id-$comment_id 첫 댓글', '$plus_point','9999-12-31','$wc_point_p','$bo_table','$wr_id') ";
sql_query($sql1);
}
}
?>

댓글을 작성하면 /bbs/write_comment_update.php 에서 포인트가 지급이 되거든요

질문자님의 의도에 맞게끔하기위해서는 여러가지 방법이 있을텐데요

그누 순종을 건들지 않는 선에서 제가 제안할 방법은 

해당 게시판의 해당스킨에 write_comment_update.skin.php 파일을 생성 하신 후에

첫번째 댓글인지 아닌지를 파악 후 조건문으로 

첫번째 댓글이면 지급했던 포인트 부여를 2배 지급으로 수정한다.

로 만들거 같습니다.

 

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

회원로그인

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