리스트에서 추가옵션 노출

리스트에서 추가옵션 노출

QA

리스트에서 추가옵션 노출

본문

list.10.skin.php 에서 선택옵션은 노출이 되는데 추가 옵션이 노출이 안되는 문제가 있습니다.

버그인지? 관련된부분 모두 살펴봐도 원본과 동일한데

뭘 살펴봐야 하는지 아시는분 자문 부탁드립니다. 

 

리스트 옵션 관련파일

list.10.skin.php

ajax.action.php

shop.data.lib.php

이 질문에 댓글 쓰기 :

답변 1

주소나 화면 캡쳐라도  올려주어야 뭔가를 체크해 볼 수 있을 것 같습니다.

 

글 내용만으로는 너무 뜬구름 잡는 것 같습니다.

 

그누보드/영카트를 최신 버전을 설치해서 나오는 지 체크해 보시고, 본인이 수정한 것이 뭔가 있다면,  그 부분을 알려주셔야 될 것 같고..

 

위의 내용으로 답해줄 사람은 거의 없을 것 같습니다.

선택옵션, 추가옵션 설정된 상품이 리스트와 메인 진열상품에서는 선택옵션만 노출되고 추가선택옵션은 노출되지 않습니다. (item.php에서는 잘나옴)
shop.data.lib.php 파일을 맨 아래 보면 선택옵션에 대한것만 있고 추가 옵션에 대한 내용은 없습니다.


// 상품리스트에서 옵션항목
function get_shop_item_options($it_id, $subject, $no)
{
    global $g5;

    if(!$it_id || !$subject)
        return '';

    $sql = " select * from {$g5['g5_shop_item_option_table']} where io_type = '0' and it_id = '$it_id' and io_use = '1' order by io_no asc ";
    $result = sql_query($sql);
    if(!sql_num_rows($result))
        return '';

    $str = '';
    $subj = explode(',', $subject);
    $subj_count = count($subj);

    if($subj_count > 1) {
        $options = array();

        // 옵션항목 배열에 저장
        for($i=0; $row=sql_fetch_array($result); $i++) {
            $opt_id = explode(chr(30), $row['io_id']);

            for($k=0; $k<$subj_count; $k++) {
                if(! (isset($options[$k]) && is_array($options[$k])))
                    $options[$k] = array();

                if(isset($opt_id[$k]) && $opt_id[$k] && !in_array($opt_id[$k], $options[$k]))
                    $options[$k][] = $opt_id[$k];
            }
        }

        // 옵션선택목록 만들기
        for($i=0; $i<$subj_count; $i++) {
            $opt = $options[$i];
            $opt_count = count($opt);
            $disabled = '';
            if($opt_count) {
                $seq = $no.'_'.($i + 1);
                if($i > 0)
                    $disabled = ' disabled="disabled"';

                $str .= '<label for="it_option_'.$seq.'" class="sound_only">'.$subj[$i].'</label>'.PHP_EOL;

                $select = '<select id="it_option_'.$seq.'" class="it_option"'.$disabled.'>'.PHP_EOL;
                $select .= '<option value="">'.$subj[$i].'</option>'.PHP_EOL;
                for($k=0; $k<$opt_count; $k++) {
                    $opt_val = $opt[$k];
                    if(strlen($opt_val)) {
                        $select .= '<option value="'.$opt_val.'">'.$opt_val.'</option>'.PHP_EOL;
                    }
                }
                $select .= '</select>'.PHP_EOL;

                $str .= $select.PHP_EOL;
            }
        }
    } else {
        $str .= '<label for="it_option_1">'.$subj[0].'</label>'.PHP_EOL;

        $select = '<select id="it_option_1" class="it_option">'.PHP_EOL;
        $select .= '<option value="">선택</option>'.PHP_EOL;
        for($i=0; $row=sql_fetch_array($result); $i++) {
            if($row['io_price'] >= 0)
                $price = '&nbsp;&nbsp;+ '.number_format($row['io_price']).'원';
            else
                $price = '&nbsp;&nbsp; '.number_format($row['io_price']).'원';

            if(!$row['io_stock_qty'])
                $soldout = '&nbsp;&nbsp;[품절]';
            else
                $soldout = '';

            $select .= '<option value="'.$row['io_id'].','.$row['io_price'].','.$row['io_stock_qty'].'">'.$row['io_id'].$price.$soldout.'</option>'.PHP_EOL;
        }
        $select .= '</select>'.PHP_EOL;

        $str .= $select.PHP_EOL;
    }

    return $str;
}



$sql = " select * from {$g5['g5_shop_item_option_table']} where io_type = '0' and it_id = '$it_id' and io_use = '1' order by io_no asc ";

io_type = '0' 에대한 쿼리만 있고 io_type = '1' 어디를 찾아봐도 없습니다.
 
제가 잘못알고 있는건가요?

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

회원로그인

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