2차분류검색기능문의드립니다.

2차분류검색기능문의드립니다.

QA

2차분류검색기능문의드립니다.

본문

3717379638_1692864551.6648.jpg

 

스킨을 받아서 2차분류까지기능을 넣었는데요. 리스트에서 검색할때 2차도 검색되도록 하려고하는데 어렵네요.

 

list.skin.php 코드입니다.

 

<?php if ($is_category) { ?>
<form name="fcategory" method="get">
<input type="hidden" name="bo_table" value="<?php echo $bo_table; ?>">
<select name="sca" id="ca_name" <?php echo ($board['bo_use_category_sub'])? ' onchange="caname()"':'';?>>
    <option value=''>전체</option>
    <?php echo get_category_option($bo_table, $sca); // SELECT OPTION 태그로 넘겨받음 ?>
</select>
<?php
    if ($board['bo_use_category_sub']) {

        $bo_confign = array();
        $bo_confign['category_list'] = $board['bo_category_list'];
        $bo_confign['category_sub_list'] = $board['bo_category_sub_list'];
        $bo_serialize = base64_encode(serialize($bo_confign));

        if (isset($write['ca_sub_name'])) $ca_sub_name = $write['ca_sub_name'];

    ?>
<select name="ca_sub_name" id="ca_sub_name">
            <option value="">서브분류를 선택하세요</option>
            <?php echo $category_option ?>
</select>

        <script type="text/javascript">
            function caname(value1, value2) {
                var ca_name = value1 ? value1 : $('#ca_name option:selected').val();
                var bo_category_list = '<?php echo $board['bo_category_list'];?>';
                var bo_category_sub_list = '<?php echo $board['bo_category_sub_list'];?>';

                $.ajax({
                    type: 'POST',
                    url: '<?php echo $board_skin_url;?>/ajax.ca_name.php',
                    data: {
                        "bo_serialize" : '<?php echo $bo_serialize;?>',
                        "ca_name" : ca_name,
                        "value2" : value2
                    },
                    dataType: "json",
                    success: function(data) {
                        $("#ca_sub_name").html(data.option);
                    }
                });
            }
            $(function() {
                //$('#ca_name option:eq(1)').attr("selected","selected");
                $('#ca_name').val('<?php echo $ca_name;?>');
                caname('<?php echo $ca_name;?>','<?php echo $ca_sub_name;?>');
            });
        </script>

 

<input type="submit" value="확인">
</form>
<?php } ?>
<?php } ?>

 

이렇게 넣으니 1차만검색이되네요. 아무래도 list 나 다른파일추가수정이 필요할거같은데요..

초보라서 어렵네요..

 

list.php 에서 추가해야될게 있을까요?

 

<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

// 분류 사용 여부
$is_category = false;
$category_option = '';
if ($board['bo_use_category']) {
    $is_category = true;
    $category_href = get_pretty_url($bo_table);

    $category_option .= '<li><a href="'.$category_href.'"';
    if ($sca=='')
        $category_option .= ' id="bo_cate_on"';
    $category_option .= '>전체</a></li>';

    $categories = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음
    for ($i=0; $i<count($categories); $i++) {
        $category = trim($categories[$i]);
        if ($category=='') continue;
        $category_option .= '<li><a href="'.(get_pretty_url($bo_table,'','sca='.urlencode($category))).'"';
        $category_msg = '';
        if ($category==$sca) { // 현재 선택된 카테고리라면
            $category_option .= ' id="bo_cate_on"';
            $category_msg = '<span class="sound_only">열린 분류 </span>';
        }
        $category_option .= '>'.$category_msg.$category.'</a></li>';
    }
}

$sop = strtolower($sop);
if ($sop != 'and' && $sop != 'or')
    $sop = 'and';

// 분류 선택 또는 검색어가 있다면
$stx = trim($stx);

 

 

이 질문에 댓글 쓰기 :

답변 3

2차 검색어가 어느 컬럼을 검색하는지 설명이 있어야 답변을 하죠

하여튼 ca_sub_name 필드를 추가했고 이것을 검색한다면

$sql_search = get_sql_search($sca, $sfl, $stx, $sop); <== 다음행에 넣으세요

if($ca_sub_name){

   $sql_search .= " and ca_sub_name='$ca_sub_name' "; 

   $qstr .= '&ca_sub_name=' . urlencode($ca_sub_name);

}

 

ajax에서 post할때 bo_category_sub_list가 누락되어있네여

그리고 url: '<?php echo $board_skin_url;?>/ajax.ca_name.php', 경로에 가셔서

bo_category_sub_list 받아서 조건에 따른 쿼리도 수정해야 할 것 같아요

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

회원로그인

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