테스트 사이트 - 개발 중인 베타 버전입니다

비회원 상태에서 추천하기 질문 드립니다. 채택완료

kujira 7년 전 조회 2,276

비로그인시에도 추천하기가 가능하도록 하려고 하는데요

</p>

<p>if($is_member){

        $sql = " select bg_flag from {$g5['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') ";

        }else{

        $sql = " select bg_flag from {$g5['board_good_table']}

                    where bo_table = '{$bo_table}'

                    and wr_id = '{$wr_id}'

                    and bg_ip = '".$_SERVER[REMOTE_ADDR]."'

                    and bg_flag in ('good', 'nogood') ";

        }

        $row = sql_fetch($sql);

        if ($row['bg_flag']) {

            if ($row['bg_flag'] == 'good')

                $status = ($txt_good) ? $txt_good : '추천';

            else

                $status = ($txt_nogood) ? $txt_nogood : '비추천';</p>

<p>            $error = "이미 $status 하셨습니다.";

            print_result($error, $success, $count);</p>

<p>        } else {</p>

<p>            @include_once($board_skin_path.'/good.skin.php');</p>

<p>            // 추천(찬성), 비추천(반대) 카운트 증가

            sql_query(" update {$g5['write_prefix']}{$bo_table} set wr_{$good} = wr_{$good} + 1 where wr_id = '{$wr_id}' ");

            sql_query(" update {$g5['board_new_table']} set as_{$good} = as_{$good} + 1 where bo_table = '{$bo_table}' and wr_id = '{$wr_id}' ", false);</p>

<p>            // 내역 생성

            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."', bg_ip = '".$_SERVER[REMOTE_ADDR]."' ");</p>

<p>            // APMS : 내글반응

            apms_response('wr', $good, '', $bo_table, $wr_id, $write['wr_subject'], $write['mb_id'], $member['mb_id'], $member['mb_nick']);</p>

<p>            $sql = " select wr_{$good} as count from {$g5['write_prefix']}{$bo_table} where wr_id = '$wr_id' ";

            $row = sql_fetch($sql);</p>

<p>            $count = $row['count'];</p>

<p>            if ($good == 'good')

                $status = ($txt_good) ? $txt_good : '추천';

            else

                $status = ($txt_nogood) ? $txt_nogood : '비추천';</p>

<p>            $success = $status." 하셨습니다.";</p>

<p>            @include_once($board_skin_path.'/good.tail.skin.php');</p>

<p>            print_result($error, $success, $count);

        }</p>

<p>

 

요렇게 로그인때는 mb_id를 , 비로그인때는 bg_ip를 가져와서 없으면 insert하고 추천하였습니다 alert창 띄우고요 있으면 이미 추천하셨습니다를 띄우려고 합니다.

 

문제는 지금 비로그인으로 각각 다른 ip로 한 군데에서 먼저 추천을 해서 insert시키면 다른 ip로는 이게 insert가 되지 않고 계속 추천하셨습니다만 alert으로 뜹니다.

 

뭐가 문제일까요;;;;

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

답변 1개

채택된 답변
+20 포인트
e
7년 전

위 소스 13줄에 echo $sql; 해보시면 알수 있을듯 하네요.

로그인 후 평가할 수 있습니다

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

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

로그인