추천,비추천 (포인트 + -) 관련 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

추천,비추천 (포인트 + -) 관련 정보

추천,비추천 (포인트 + -) 관련

본문

/bbs/good.php
 
  //추천,비추천
   insert_point($write[mb_id],5000, "$board[bo_subject] $wr_id 추천", $bo_table, $wr_id, '추천');
   insert_point($write[mb_id],-5000, "$board[bo_subject] $wr_id 비추천", $bo_table, $wr_id, '비추천');
 
에.. 아래 처럼 추천 , 비추천 포인트  상승 ,차감을 했습니다.
포인트 상승은 잘됩니다.
 
비추천 눌렀을때..
 
포은트 - 가 안되는군요..
 
그래서 질문을 해봤는대..
 
/lib/common.php   부분을 잘 확인하면 가능하다 하시는대..
 
도무지 알수가 없네요..
 
무엇이 빠져서 포인트 - 차감이 안되는것일까요?
 
조언좀 부탁 드리겠습니다.
 

// 포인트 부여
function insert_point($mb_id, $point, $content='', $rel_table='', $rel_id='', $rel_action='')
// 포인트 삭제
function delete_point($mb_id, $rel_table, $rel_id, $rel_action)
  • 복사

댓글 전체

// 포인트 부여
function insert_point($mb_id, $point, $content="")
{
    global $config;
    global $g4;
    global $is_admin;

    // 포인트 사용을 하지 않는다면 return
    if (!$config[cf_use_point]) { return; }

    // 포인트가 없다면 업데이트 할 필요 없음
    if ($point == 0) { return; }

    // 최고관리자는 포인트 추가 내역 남기지 않음
    //if ($is_admin == "super") { return; }
   
    // 회원아이디가 없다면 업데이트 할 필요 없음
    if ($mb_id == "") { return; }
    $mb = get_member($mb_id);
    if (!$mb[mb_id]) { return; }

    // 포인트 건별 생성
    $sql = " insert $g4[point_table] ( mb_id, po_datetime, po_content, po_point )
            values ( '$mb_id', '$g4[time_ymdhis]', '$content', '$point' ) ";
    sql_query($sql);

    // 포인트 내역의 합을 구하고
    $sql = " select sum(po_point) as sum_po_point from $g4[point_table] where mb_id = '$mb_id' ";
    $row = sql_fetch($sql);
    $sum_point = $row[sum_po_point];

    // 포인트 UPDATE
    $sql = " update $g4[member_table] set mb_point = '$sum_point' where mb_id = '$mb_id' ";
    sql_query($sql);
}

다른점이 있는지 확인하세엽..!
<?
include_once("./_common.php");

@include_once("$board_skin_path/good.head.skin.php");

echo "<meta http-equiv='content-type' content='text/html; charset=$g4[charset]'>";

if (!$is_member)
{
    $href = "./login.php?$qstr&url=".urlencode("./board.php?bo_table=$bo_table&wr_id=$wr_id");

    echo "<script language='JavaScript'>alert('회원만 가능합니다.'); top.location.href = '$href';</script>";
    exit;
}

if (!($bo_table && $wr_id))
    alert_close("값이 제대로 넘어오지 않았습니다.");

$ss_name = "ss_view_{$bo_table}_{$wr_id}";
if (!get_session($ss_name))
    alert_close("해당 게시물에서만 추천 또는 비추천 하실 수 있습니다.");

$row = sql_fetch(" select count(*) as cnt from {$g4[write_prefix]}{$bo_table} ", FALSE);
if (!$row[cnt])
    alert_close("존재하는 게시판이 아닙니다.");

if ($good == "good" || $good == "nogood")
{
    if($write[mb_id] == $member[mb_id])
        alert_close("자신의 글에는 추천 또는 비추천 하실 수 없습니다.");

    if (!$board[bo_use_good] && $good == "good")
        alert_close("이 게시판은 추천 기능을 사용하지 않습니다.");

    if (!$board[bo_use_nogood] && $good == "nogood")
        alert_close("이 게시판은 비추천 기능을 사용하지 않습니다.");

    $sql = " select bg_flag from $g4[board_good_table]
              where bo_table = '$bo_table'
                and wr_id = '$wr_id'
                and mb_id = '$member[mb_id]'
                and bg_flag in ('good', 'nogood') ";
    $row = sql_fetch($sql);
    if ($row[bg_flag])
    {
        if ($row[bg_flag] == "good")
            $status = "추천";
        else
            $status = "비추천";
       
        echo "<script language='JavaScript'>alert('이미 \'$status\' 하신 글 입니다.');</script>";
    }
    else
    {
        // 추천(찬성), 비추천(반대) 카운트 증가
        sql_query(" update {$g4[write_prefix]}{$bo_table} set wr_{$good} = wr_{$good} + 1 where wr_id = '$wr_id' ");
        // 내역 생성
        sql_query(" insert $g4[board_good_table] set bo_table = '$bo_table', wr_id = '$wr_id', mb_id = '$member[mb_id]', bg_flag = '$good', bg_datetime = '$g4[time_ymdhis]' ");

        if ($good == "good") {
            $status = "추천";
            // 추천 포인트 지급
            insert_point($write['mb_id'], 1000, "{$bo_table} - {$wr_id} 추천", $bo_table, $wr_id, $member['mb_id']);
        } else {
            $status = "비추천";
// 비추천 포인트 지급
            insert_point($write['mb_id'], -1000, "{$bo_table} - {$wr_id} 비추천", $bo_table, $wr_id, $member['mb_id']);
}


        echo "<script language='JavaScript'> alert('이 글을 \'$status\' 하셨습니다.');</script>";
    }
}

@include_once("$board_skin_path/good.tail.skin.php");
?>
<script language="JavaScript"> window.close(); </script>
© SIRSOFT
현재 페이지 제일 처음으로