추천기능을 따로 good2.php로 제작했는데 문제가 있어요 ㅠㅠ

추천기능을 따로 good2.php로 제작했는데 문제가 있어요 ㅠㅠ

QA

추천기능을 따로 good2.php로 제작했는데 문제가 있어요 ㅠㅠ

본문

제목처럼 good2.php를 따로 제작해서 다른 추천기능과 다르게 취소기능을 만들어 넣었는데요.

테이블도 따로 쓰려고 g5_board_good 테이블을 구조만 복사해서 g5_cancel 테이블을 제작했어요.

 

그리고 good2.php 안에 있는 소스중 board_good 부분을 cancel로 변경했는데 적용이 안되네요 ㅠㅠ

또 변경할게 남은건가요..? 왜 적용이 안될까요..? 도와주세요 ㅠㅠ

 


<?php
include_once('./_common.php');
 
@include_once($board_skin_path.'/good.head.skin.php');
 
// 자바스크립트 사용가능할 때
if($_POST['js'] == "on") {
    $error = $count = "";
 
    function print_result($error, $count)
    {
        echo '{ "error": "' . $error . '", "count": "' . $count . '" }';
        if($error)
            exit;
    }
 
    if (!$is_member)
    {
        $error = '회원만 가능합니다.';
        print_result($error, $count);
    }
 
    if (!($bo_table && $wr_id)) {
        $error = '값이 제대로 넘어오지 않았습니다.';
        print_result($error, $count);
    }
 
    $ss_name = 'ss_view_'.$bo_table.'_'.$wr_id;
    if (!get_session($ss_name)) {
        $error = '해당 게시물에서만 추천 또는 비추천 하실 수 있습니다.';
        print_result($error, $count);
    }
 
    $row = sql_fetch(" select count(*) as cnt from {$g5['write_prefix']}{$bo_table} ", FALSE);
    if (!$row['cnt']) {
        $error = '존재하는 게시판이 아닙니다.';
        print_result($error, $count);
    }
 
    if ($good == 'good' || $good == 'nogood')
    {
        if($write['mb_id'] == $member['mb_id']) {
            $error = '자신의 글에는 추천 또는 비추천 하실 수 없습니다.';
            print_result($error, $count);
        }
 
        if (!$board['bo_use_good'] && $good == 'good') {
            $error = '이 게시판은 추천 기능을 사용하지 않습니다.';
            print_result($error, $count);
        }
 
        if (!$board['bo_use_nogood'] && $good == 'nogood') {
            $error = '이 게시판은 비추천 기능을 사용하지 않습니다.';
            print_result($error, $count);
        }
 
        $sql = " select bg_flag from {$g5['cancel_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 = '비추천';
 
            $error = "이미 $status 하신 글 입니다.";
            print_result($error, $count);
        }
        else
        {
            // 추천(찬성), 비추천(반대) 카운트 증가
            sql_query(" update {$g5['write_prefix']}{$bo_table} set wr_{$good} = wr_{$good} + 1 where wr_id = '{$wr_id}' ");
            // 내역 생성
            sql_query(" insert {$g5['cancel_table']} set bo_table = '{$bo_table}', wr_id = '{$wr_id}', mb_id = '{$member['mb_id']}', bg_flag = '{$good}', bg_datetime = '".G5_TIME_YMDHIS."' ");
 
            $sql = " select wr_{$good} as count from {$g5['write_prefix']}{$bo_table} where wr_id = '$wr_id' ";
            $row = sql_fetch($sql);
 
            $count = $row['count'];
 
            print_result($error, $count);
        }
    }
} else {
    include_once(G5_PATH.'/head.sub.php');
 
    if (!$is_member)
    {
        $href = './login.php?'.$qstr.'&url='.urlencode('./board.php?bo_table='.$bo_table.'&wr_id='.$wr_id);
 
        alert('회원만 가능합니다.', $href);
    }
 
    if (!($bo_table && $wr_id))
        alert('값이 제대로 넘어오지 않았습니다.');
 
    $ss_name = 'ss_view_'.$bo_table.'_'.$wr_id;
    if (!get_session($ss_name))
        alert('해당 게시물에서만 추천 또는 비추천 하실 수 있습니다.');
 
    $row = sql_fetch(" select count(*) as cnt from {$g5['write_prefix']}{$bo_table} ", FALSE);
    if (!$row['cnt'])
        alert('존재하는 게시판이 아닙니다.');
 
    if ($good == 'good' || $good == 'nogood')
    {
        if($write['mb_id'] == $member['mb_id'])
            alert('자신의 글에는 추천 또는 비추천 하실 수 없습니다.');
 
        if (!$board['bo_use_good'] && $good == 'good')
            alert('이 게시판은 추천 기능을 사용하지 않습니다.');
 
        if (!$board['bo_use_nogood'] && $good == 'nogood')
            alert('이 게시판은 비추천 기능을 사용하지 않습니다.');
 
        $sql = " select bg_flag from {$g5['cancel_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 = '비추천';
 
            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['cancel_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.'&wr_id='.$wr_id;
 
            alert("이 글을 $status 하셨습니다.", '', false);
        }
    }
}
 
@include_once($board_skin_path.'/good.tail.skin.php');
?>

이 질문에 댓글 쓰기 :

답변 1

질문하실때 증상이나 오류에 대한 상세한 설명을 주셔야 답변을 받으실수 있을 겁니다.

올려 놓으신 소스만 가지고는 뭐라 설명 드리기 그렇습니다.

파일명 변경하고 테이블만 만든다고 모든 기능이 되는건 아닙니다.

g5['board_good_table']이 왜 g5_board_good 인지 먼저 파악을 하셔야 할거 같으네요.

일단 테이블 부분에 대한 답변만 드릴께요.

/data/dbconfig.php 파일 열어 보시면


$g5['board_good_table'] = G5_TABLE_PREFIX.'board_good'; // 게시물 추천,비추천 테이블

이줄 아래에 님이 쓰실 테이블도 정의를 하셔야 님이 수정하신 것처럼 쓰실수 있습니다.


$g5['board_good_table'] = G5_TABLE_PREFIX.'board_good'; // 게시물 추천,비추천 테이블
$g5['board_cancel_table'] = G5_TABLE_PREFIX.'cancel'; // 추가하신 테이블

이렇게요.

 

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

회원로그인

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