답변 1개
채택된 답변
+20 포인트
3년 전
A회원 : 차단을 한 회원
B회원 : 차단을 당한 회원
DB구조를 보니까 A회원이 로그인 한 상태에서 B회원을 차단 했을때 DB에
mb_id는 A회원의 mb_id
block_id는 B회원의 mb_id 인것으로 보이는데요..
/extend/user.block.id.php에서 $tmp_block 이 A회원이 차단한 회원(B회원)의 목록을 가져오는것 같습니다.
그럼 반대로
/extend/user.block.id.php에서 내가 차단한 회원이 아니라 내가 차단 당한 쿼리를 작성해보면
</p>
<p>$back_block = sql_fetch(" SELECT * FROM $g5_id_block WHERE block_id = '$me_member' ");</p>
<p>
그리고 /bbs/list.php에서
</p>
<p>// .../bbs/list.php</p>
<p>// 차단 회원 list 감추기</p>
<p>if($tmp_block['block_id'])</p>
<p>{</p>
<p> $sql_search_block = '';</p>
<p> $blocks = explode(',', $tmp_block['block_id']);</p>
<p> for ($k=0, $blockc=count($blocks); $k<$blockc; $k++)</p>
<p> $sql_search_block .= " and mb_id <> '$blocks[$k]' ";</p>
<p>}</p>
<p>// 추가</p>
<p>if($back_block['mb_id'])</p>
<p>{</p>
<p> $sql_search_back_block = '';</p>
<p> $blocks = explode(',', $tmp_block['block_id']);</p>
<p> for ($k=0, $blockc=count($blocks); $k<$blockc; $k++)</p>
<p> $sql_search_back_block .= " and block_id <> '$blocks[$k]' ";</p>
<p>}</p>
<p>// ... 생략</p>
<p>// $sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE {$sql_search} {$sql_search_block} ";
$sql = " SELECT COUNT(DISTINCT `wr_parent`) AS `cnt` FROM {$write_table} WHERE {$sql_search} {$sql_search_block} {$sql_search_back_block}";</p>
<p>// ... 생략</p>
<p>if ($sca || $stx) {</p>
<p> // $sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_search_block} {$sql_order} limit {$from_record}, $page_rows ";</p>
<p> </p>
<p> $sql = " select distinct wr_parent from {$write_table} where {$sql_search} {$sql_search_block} {$sql_search_back_block} {$sql_order} limit {$from_record}, $page_rows ";</p>
<p>} else {</p>
<p> // $sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_search_block}";</p>
<p> </p>
<p> $sql = " select * from {$write_table} where wr_is_comment = 0 {$sql_search_block} {$sql_search_back_block}";</p>
<p>}</p>
<p> </p>
<p>// .../bbs/list.php</p>
<p>
저도 테스팅을 안해봐서 잘 실행 될지는 모르겠지만 중요한건 기존에 차단리스트를 불러오는 로직을 반대로 하시면 됩니다
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
인디안바압
3년 전
�
아르키어드
3년 전
일단 저도 테스트를 진행해본게 아니라서 자세히는 알수 없습니다만.. 위에서 제가 추가한 쿼리쪽을 직접 찍어보시는게 좋을거같고... 등록부분은 딱히 건드린 부분이 없습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
1. 차단 당한 사람은 차단 한 사람의 게시물 뿐만 아니라 공지를 제외한 모두의 게시글이 보이지 않습니다ㅠ
2. 차단 시 차단 목록에 등록이 되질 않습니다 ㅠ
뭐가 문제일까요