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

분류 카테고리를 체크박스로 다중선택하여 글쓰기 완료 시 해당 분류선택 시 나오지 않는 현상 채택완료

https://sir.kr/g5_tip/12256

 

이부분을 참고하여 게시판 작성 분류 카테고리 다중선택을 진행하였습니다.

 

카테고리가 다중선택이 가능하도록 글작성까지 잘 되지만, 

 

리스트페이지에서 분류카테고리를 누르면 뜨지 않네요....

 

만약 분류가 서울,경기 이렇게 체크되어서 글작성을 하였다면, 서울 카테고리를눌렀을때도 나오고 경기 카테고리를 눌렀을때도 나와야하는데, 아래이미지처럼 되어있네요 ㅠㅠ

 

 

서울버튼 따로 경기버튼따로 나오도록 할 순 업는건가요?

 

전체 레이아웃은 이렇습니다.

 

 

분류 카테고리명이 나오는 부분의 코드는 이렇습니다.

 

</p>

<p><li class="main_lists_date">

                                    <!--<?php echo $list[$i]['wr_name']?> <?php echo $list[$i]['wr_datetime']?>-->

                                    <?php if ($list[$i]['comment_cnt']) { ?> <span class="cnt_cmt">+<?php echo $list[$i]['wr_comment']; ?></span><?php } ?>

                                    <?php if ($list[$i]['ca_name']) { ?>

                                    <dd class="list_ca"><a href="<?php echo $list[$i]['ca_name_href'] ?>"><?php echo $list[$i]['ca_name'] ?></a></dd>

                                    <?php } ?>

                                </li></p>

<p>

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

답변 2개

채택된 답변
+20 포인트

lib/common.lib.php에서

590줄보시면 get_sql_search 함수가있을겁니다

밑에 내려보시면

    if ($search_ca_name)

        $str = " ca_name = '$search_ca_name' ";

이부분을

 

    if ($search_ca_name)

        $str = " ca_name LIKE '%$search_ca_name%' ";

 

으로바꿔주세요.

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

답변에 대한 댓글 3개

lib파일을 바꾸면 모든 게시판들에 적용이 되지 않나요?
// 검색 구문을 얻는다.
function get_sql_search($search_ca_name, $search_field, $search_text, $search_operator='and')
{
global $g5;
global $bo_table;

$str = "";
if ($search_ca_name)
$str = " ca_name = '$search_ca_name' ";

if($search_ca_name && $bo_table == 'gallery') // bo_table 값에 쓰실 게시판주소bo_table값작성
{
$str = " ca_name LIKE '%$search_ca_name%' ";
}


이렇게하시면되겠네요.
혹시 이부분도 처리했는데 not found 나오는 이유가 먼가요? ㅜ

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

방법은 다양할텐데

어떻게 구성하느냐는 로직을 구현하기 나름입니다.

 

글을 저장할시

카테고리를 멀티로 저장할경우

 

1개의 컬럼(필드)에 '|'로 구분한 값을 저장하고

조회시에 explode 시켜서 값을 가지고 있어야하고(해당페이지 로딩시점)

 

실제 카테고리 리스트에서 선택여부를 표기할때는

각 카테고리별로 값이 존재하는지를 중복(멀티선택된 값수만큼) 체크를 하면서 체크여부를 정해야 하죠

 

위의 로직에서는 단순이 저장된것을 표기하는 형태라서

멀티로 처리하는 로직은 없네요

 

로직을 고민해보시는걸 추천드립니다.

그래야 이후의 화면구성을 할때도 다시금 구현할테니까요

 

어느정도 고민해보신후 직접 개선하시거나 잘안풀릴경우 다시 질문올리시면 답이 잘 달릴것같네요

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

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

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

로그인

전체 질문 목록