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

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

따라하기 10년 전 조회 7,054

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

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

 

</p><p>// 상품 선택옵션
function get_item_options($it_id, $subject)
{
    global $g5;</p><p>    if(!$it_id || !$subject)
        return '';</p><p>    $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 '';</p><p>    $str = '';
    $subj = explode(',', $subject);
    $subj_count = count($subj);</p><p>    if($subj_count > 1) {
        $options = array();</p><p>        // 옵션항목 배열에 저장
        for($i=0; $row=sql_fetch_array($result); $i++) {
            $opt_id = explode(chr(30), $row['io_id']);</p><p>            for($k=0; $k<$subj_count; $k++) {
                if(!is_array($options[$k]))
                    $options[$k] = array();</p><p>                if($opt_id[$k] && !in_array($opt_id[$k], $options[$k]))
                    $options[$k][] = $opt_id[$k];
            }
        }</p><p>        // 옵션선택목록 만들기
        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;</p><p>                $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;</p><p>                $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;</p><p>        $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']).'원';</p><p>            if(!$row['io_stock_qty'])
                $soldout = '  [품절]';
            else
                $soldout = '';</p><p>            $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;</p><p>        $str .= '<td>'.$select.'</td>'.PHP_EOL;
        $str .= '</tr>'.PHP_EOL;
    }</p><p>    return $str;
}​</p><p>

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

답변 4개

채택된 답변
+20 포인트

 

 

 

 

 

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

 

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

 

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

 

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


 

 

 

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

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

10년 전

추가옵션을 제외하고

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

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

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

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

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

10년 전

그러니까.. 옵션이 두개 잖아요.

 

옵션1 옵션2

이렇게 한줄로 나열하고 싶어요.

 

 

 

기존에는

 

옵션1

옵션2

이렇게 두줄로 나열이 되잖아요.

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

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

옵션 선택부분을 한줄로 나열한다는게 어떤 의미인지 정확하게 알려주시겠어요?^^ 

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

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

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

로그인