게시판 뷰페이지에서 로그인한 유저가 좋아요(추천)을 눌렀는지 확인하는 방법

게시판 뷰페이지에서 로그인한 유저가 좋아요(추천)을 눌렀는지 확인하는 방법

QA

게시판 뷰페이지에서 로그인한 유저가 좋아요(추천)을 눌렀는지 확인하는 방법

본문

안녕하세요. 게시판 뷰페이지의 추천기능을 좋아요로 사용하려고 합니다. 비추천은 사용하지 않아 없애놓았습니다.

뷰페이지의 good_button 만 띄우고, else 부분에도 동일하게 wr_good 만 남겨놓았습니다.

 

제가 구현하고 싶은건 로그인한 유저가 해당 게시글의 좋아요(추천)를 눌렀는지 안눌렀는지를 체크하고 싶습니다. 

현재 제가 구현을 해놓긴 했는데 직업 쿼리로 데이터를 불러와서 해야하는건지 ¹더 쉬운 방법이 있는지 알고자 질문드리게 되었습니다.

 

직접 뷰페이지 안에서 board_good_table 을

로그인한 mb_id 와 게시글 아이디인 wr_id 를 가지고

출력되는 데이터를 조회를 해서 존재하면 1, 없으면 0 으로 값을 가져와서 1이면 좋아요를 누른 상태인 색이 표현된 하트 아이콘, 0이면 좋아요를 안누른 상태로 색이 빠진 흑백 하트 아이콘으로

표현을 해놓은 상태입니다.


<?php if ( $good_href || $nogood_href) { ?>
<div id="bo_v_act">
    <?php
    if ($good_href) {
        // 이 부분이 제가 구현한 부분입니다. {
        $mygood_sql = " select count(*) as cnt from {$g5['board_good_table']} where bo_table = '{$bo_table}' and wr_id = '{$view['wr_id']}' and mb_id = '{$member['mb_id']}' ";
        $mygood_row = sql_fetch($mygood_sql);
        $myLike = $mygood_row['cnt'] ? ' on' : '';
        // } 이 부분이 제가 구현한 부분입니다.
    ?>
    <span class="bo_v_act_gng">
        <a href="<?php echo $good_href.'&'.$qstr ?>" id="good_button" class="bo_v_good flex items-center justify-center<?php echo $myLike; ?>"><span class="sound_only">추천</span><strong class="font-medium"><?php echo number_format($view['wr_good']) ?></strong></a>
    </span>
    <?php } ?>
</div>
<?php } else {
    if($board['bo_use_good'] || $board['bo_use_nogood']) {
?>
<div id="bo_v_act">
    <?php if($board['bo_use_good']) { ?><span class="bo_v_good flex items-center justify-center"><span class="sound_only">추천</span><strong class="font-medium"><?php echo number_format($view['wr_good']) ?></strong></span><?php } ?>
</div>
<?php
    }
}
?>

이렇게 게시판 뷰페이지에서 직업 good table 을 조회해서 가져오는 방법밖에 없는건가요??
아 그리고 ²추천/비추천 부분에서 if else 로 나눠서 출력하는 이유도 궁금합니다.
if( $good_href || $nogood_href ) 부분에는 버튼으로 출력되고,
else 에는 그냥 보여주기용인 것 같은데... 

이 질문에 댓글 쓰기 :

답변 1

쿼리로 조회해서 가져와 처리해주는 방식이 맞습니다.

답변 감사드립니다! :)
혹시 본문 아래 내용중 추천/비추천 이 조건에 따라 다르게 출력되는데, 해당 조건의 내용을 알 수 있을까요...?!


<?php if ( $good_href || $nogood_href) { ?>
추천/비추천 버튼 출력
<?php } else {
    if($board['bo_use_good'] || $board['bo_use_nogood']) {
?>
추천/비추천 결과(?) 출력
<?php 
    }
}
?>

이렇게 나뉘어져 있는데... 항상 버튼 방식으로 출력되지않나 싶어서요.

아래 조건에는 게시판 설정에서 추천 사용, 비추천 사용에 체크되어있는거에 따라 출력될 것 같은데,
위 조건에 good_href, nogood_href 가 있으면 출력되게 되어있어서 찾아보니
해당 값들의 정의는 /bbs/view.php 에 되어있더라구요.
결과적으로 보면 게시판 설정에서 추천에 체크가 되었다면 $good_href 가 정의 되다보니

항상 버튼형식의 추천/비추천이 출력될 것 같아보이는데... 아래 else 부분이 어떨때 출력되는지 궁금합니다;;

아... 그 부분은 저도 확인해서 알고 있어서 위 제 댓글에 아래 조건에 대한 내용을 작성했었습니다ㅠ
그런데 결국 게시판 설정에서 추천/비추천 사용 유무로 $good_href, $nogood_href 가 추가되는 것을 확인했습니다

그래서 결국 제가 생각한게 if else 조건 모두 게시판 설정의 추천/비추천 사용유무에 따라 동일한 영향을 받는데, 그렇다면 굳이 조건을 나눌 필요가 있나 생각이 들어가지고...

잘못 생각한건가 싶어서 else 부분이 대체 언제 실행되는지가 궁금했습니다 :)

다시 한 번 답변 감사드립니다!

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

회원로그인

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