옵션선택 부분을 한줄로 표현하려면?

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
옵션선택 부분을 한줄로 표현하려면?

QA

옵션선택 부분을 한줄로 표현하려면?

본문

아래의 코드에서 해결해야 할듯 한데..

어떻게 해야 옵션선택 부분을 한줄로 나열할수 있죠?

 


// 상품 선택옵션
function get_item_options($it_id, $subject)
{
    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(!mysql_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(!is_array($options[$k]))
                    $options[$k] = array();
                if($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 = $i + 1;
                if($i > 0)
                    $disabled = ' disabled="disabled"';
                $str .= '<tr>'.PHP_EOL;
                $str .= '<th><label for="it_option_'.$seq.'">'.$subj[$i].'</label></th>'.PHP_EOL;
                $select = '<select id="it_option_'.$seq.'" class="it_option"'.$disabled.'>'.PHP_EOL;
                $select .= '<option value="">선택</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 .= '<td>'.$select.'</td>'.PHP_EOL;
                $str .= '</tr>'.PHP_EOL;
            }
        }
    } else {
        $str .= '<tr>'.PHP_EOL;
        $str .= '<th><label for="it_option_1">'.$subj[0].'</label></th>'.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 = '  + '.number_format($row['io_price']).'원';
            else
                $price = '   '.number_format($row['io_price']).'원';
            if(!$row['io_stock_qty'])
                $soldout = '  [품절]';
            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 .= '<td>'.$select.'</td>'.PHP_EOL;
        $str .= '</tr>'.PHP_EOL;
    }
    return $str;
}​

이 질문에 댓글 쓰기 :

답변 4

1adc1fb2844944a386924810840bf942_1424055740_0528.jpg

 

 

 

 

 

이런 레이아웃을 원하신다면

 

www/skin/shop/basic/item.form.php 에서 이렇게 수정하시면 되요~

 

디아이브이로 옵션을 감싸고 플롯레프트 시킨후에 나머지 부분은 클리어보스 !

 

보기 편하게 스타일로 해놨고 css로 변경후 사용하시면 됩니다~


1adc1fb2844944a386924810840bf942_1424055743_2357.jpg

 

 

 

추가옵션을 제외하고

선택옵션만 한줄로 하고 싶은데, 어떻게 해야 할까요?

색상, 사이즈 를 한줄로...

제가 질문드린 코드에서 수정해야 할듯 합니다.

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

회원로그인

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