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

[많이 질문하지만, 해결안되는 문제] 옵션가 문제 채택완료

리버즈 5년 전 조회 8,639

판매가가 1000원이구 옵션선택 상품을 500원,800원,900으로 설정해놓은 경우

 

(상품명) +500

(상품명) +800

(상품명) +900 

 

으로 나오자나요. 이거 상식적으로

 

(상품명) 1500원

(상품명)  1800원

(상품명)  1900원

 

요렇게 나와야 되는거 아닌가요? ^^;;

 

업그레이드가 되어도, 안바뀌었네요.

 

제가 근 2년간 검색을 해봐도, 답이 없네요.

 

답은 무조건 " 계발자에게 의뢰하라" 

 

.

.

 

돈주고 하라는 것인데.....

 

소스를 알려주시고, 할 수있는 사람은 따라 해봐라 하면 안되는건지요.

 

영카트가 많은 이들에게 사랑 받는것은 서로 정보를 공유해가며, 영카트를 스스로 완성해갈수 있는 이런 장이 있어서가 아닐까요...(아닌가?;;)

 

거두절미하고, 이곳에 계신 많은 고수 분들이 계실텐데, 수많은 사람들이 오래전부터 묻고있는 

 

꼭 필요한 "옵션가 제대로 더해서 제품판매가 제대로 표현" 이 부분을 어느 한분 올려주시는 분이 없을까요. 왜왜왜??

 

제대로 따라하기를 안올려 주실까요? 왜왜왜......올리면, 안되는 굉장한 기법, 기술 인가요?, 꼭 프로페셔널에게 맡겨야한는 ....

 

 

2년전과 똑같은 질문으로 답을 찾다가 , 그동안 저말고도 무수히 많은 분들이 제가 예전 질문에 답을 못찾았던 시점부터 저와같은 질문을 지금도 하는 분들이 있다는 것을 보고, "개발자에게 맡기라는" 대답 보단 차라리  "나는 잘모르겠는데 열심히 해

 

봐" 라고 말하는 답이 본 게시판 제목에 취지와 맡지 않을 까합니다.  

 

분명 영카트 개발자가 그 중요한 옵션에 디테일을 의도적으로 개발에 빈틈을 남기고, 개발자에게 프로그램의뢰를 요청하도록 영카트를 만들지는 않았으리라 생각하려 노력해볼랍니다. 

 

아 그리고 같은 질문하신 몇몇 분들은 댓글 쭉 따라 읽다보면 해결 방법을 찾으신 분도 있으신것 같은데...

공유좀 부탁드려요....힘들게 알아 내신것 쉽게 알려주긴 아쉽겠지만.....많은 이들에게 넓은 마음 으로 던져주세요.

정리가 귀찮으시면 제게 공일공 7154 7638 연락 주시면 잘 정리해서 제가 출처 남기고 오픈할게요......

 

모두모두 새해 잘 보내세요...

 

 

 

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

답변 13개

채택된 답변
+20 포인트
하재하재

네이버도 추가금액 안내방식입니다

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

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

5년 전

https://sir.kr/yc5_ps/950">https://sir.kr/yc5_ps/950 이거를 말했던 겁니다. 이제라도 알아주소서.....^^ 행복합시다~

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

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

B
5년 전

* 약 1주일 되었는데, 어떠한 피드백도 없어서 미리보기는 삭제합니다.

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

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

B
5년 전

처리 방법은 다양한데, /lib/shop.lib.php 파일 수정으로 해봤습니다.

영카트 5.4.1.4 버전 기준으로, 949 라인부터의 소스 내용입니다.

★ 표시한 주석 라인 보면 됩니다.


선택된 옵션이 출력되는 부분은 생략,

옵션명과 가격 길이 구해서 조절하면 보기 좋게 출력되겠으나 생략,

오직 옵션 셀렉트박스에 표시되는 가격만 기본가+옵션가 처리입니다.

라이브러리 파일 수정이라 쇼핑몰 전체가 같은 방식으로 출력되니 주의.

기타 생략합니다.

 

- 미리보기 : 2020-01-20 오후 ~ 2020-01-26 오전까지 유지 / 피드백 없어서 삭제

 

</p>

<p>// 상품 선택옵션

function get_item_options($it_id, $subject, $is_div='', $is_first_option_title='')

{

    global $g5, $it; // ★ $it 추가. 실행 시점에 상품 정보가 할당되어 있는 변수</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(!sql_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"';</p>

<p>                if($is_div === 'div') {

                    $str .= '<div class="get_item_options">'.PHP_EOL;

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

                } else {

                    $str .= '<tr>'.PHP_EOL;

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

                }</p>

<p>                $select = '<select id="it_option_'.$seq.'" class="it_option"'.$disabled.'>'.PHP_EOL;</p>

<p>                $first_option_title = $is_first_option_title ? $subj[$i] : '선택';</p>

<p>                $select .= '<option value="">'.$first_option_title.'</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>                if($is_div === 'div') {

                    $str .= '<span>'.$select.'</span>'.PHP_EOL;

                    $str .= '</div>'.PHP_EOL;

                } else {

                    $str .= '<td>'.$select.'</td>'.PHP_EOL;

                    $str .= '</tr>'.PHP_EOL;

                }

            }

        }

    } else {

        if($is_div === 'div') {

            $str .= '<div class="get_item_options">'.PHP_EOL;

            $str .= '<label for="it_option_1">'.$subj[0].'</label>'.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++) {</p>

<p>            /* ★ 주석 처리</p>

<p>            if($row['io_price'] >= 0)

                $price = '  + '.number_format($row['io_price']).'원';

            else

                $price = '   '.number_format($row['io_price']).'원';</p>

<p>            */</p>

<p>            $price = '   '.number_format($it['it_price']+$row['io_price']).'원'; // ★ 추가</p>

<p>            if($row['io_stock_qty'] < 1)

                $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;

        

        if($is_div === 'div') {

            $str .= '<span>'.$select.'</span>'.PHP_EOL;

            $str .= '</div>'.PHP_EOL;

        } else {

            $str .= '<td>'.$select.'</td>'.PHP_EOL;

            $str .= '</tr>'.PHP_EOL;

        }</p>

<p>    }</p>

<p>    return $str;

}</p>

<p>

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

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

SLOOP
5년 전

댓글에 이미지 첨부가 안돼서 답변으로 올립니다. 일단 글쓴이님 본인부터가 개별 상품의 [옵션]선택이랑 묶음상품의 [상품]선택을 구분하지 못하면서 이런 글을 올렸다는 것이 참 답답하네요. 밑의 화면은 죄측부터 각각 옥션과 지마켓의 [옵션] 기능입니다.

 

 

언급한 내용은 상식도 아니거니와 오픈마켓이라는 특성 때문에 묶음상품이라는 기능을 지원하는 것 뿐이지, 영카트와 같은 소규모 쇼핑몰 솔루션에서는 지원할 이유가 없는 기능입니다. 만약 필요하다면 의뢰를 통해 추가로 개발해야하는 게 당연하죠.

더이상 답변이 의미가 없는 게시물 같으니 여기까지만 하겠습니다.

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

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

P
5년 전

본인 힘으로 안되면 개발자에게 맡기는게 당연한겁니다. 

 

개발자가 있는 이유가 무엇인지 한번 생각해보시기 바랍니다.

 

이시간에,, 왜 이런걸루 이렇게 화가나셨는진 모르겠습니다만 위의 개발자분들과 같은 생각입니다.

 

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

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

5년 전

옥션, 지마켓, 위메프 등 국내 유명 쇼핑몰들은 모두 옵션가에 추가금액 표기 방식일텐데, 무얼 근거로 상식이라 운운하는지 모르겠네요.

------------> 확인 해보시고 말씀하세요. 옵션가에 금액이 합해진(계산된) 금액으로 결국 표기된답니다.

 

<영카트 경우>

<옥션 경우>

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

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

SLOOP
5년 전

옥션, 지마켓, 위메프 등 국내 유명 쇼핑몰들은 모두 옵션가에 추가금액 표기 방식일텐데, 무얼 근거로 상식이라 운운하는지 모르겠네요.

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

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

5년 전

무슨 까닭으로 혼자 화가 난 것인지 모르겠으나

혼자 판단하고 결정내려서 혼자 화를 내고 있네요.

 

----------> 저는 화가 나지 않았는데요? 전화주시는 분들이랑 즐겁게 얘기 나누고 있습니다.

공감하는 부분도 있고, 공감 못하는 부분도 있고...이게 화가 날 일인가요?...??

 

============================ 

답은 무조건 " 계발자에게 의뢰하라" 

돈주고 하라는 것인데.....

============================

의뢰게시판이 있다보니 그누보드, 영카트가 개발자 덕에 수익을 얻는 곳이거나

개발자를 위한 사이트로 생각하고 있으신 것 같은데 대단한 판단착오 입니다

 

----------> 판단을 내리지 않았습니다.

 

영카트 개발자가 만든 원천소스가 가격+옵션가로 표시하도록 되어있으니

그것을 그대로 사용할 사람은 그냥 사용하는 것이고 방식을 바꾸고 싶은 사람은

변경해서 사용하도록 하는 공개소스인 것이지 누구를 위해서 그렇게 만든 것이 아닙니다

 

----------> 네 알고 있습니다. 그렇게 만든 부분을  그래서 다양한 분들과 수정을 하기 위해 도움을 주고 받고자 하는 것입니다. 알려주고 싶은 분이 있으시다면 알려주시고, 못알려주겠다는 사람은 안알려주면되고, 돈받고 알려주겠다는 사람은 돈받고 알려주면 되겠지요...

 

중요한건 누구도 누구의 생각과 행동을 그르다고 할수 는 없는 것입니다.

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

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

5년 전

물론,  운영하는 분의 취향마다 다르고, 취급품목에 따라, 옵션가가 현재 상태가 나은것도 있을것입니다. 알고 있습니다.

하지만, 이건 저의 경우에 필요한 옵션가 표현 부분이고, 몇몇 분의 얘기를 들어보니, 굉장히 힘든 작업이라는 것을 유선상

통화하였습니다. 전화가 꽤 와서....전화번호를 지우려고 하는데.....댓글이 달려서 수정이 안되네요...전화는 확실한분 아니시면 자제 바랍니다.....개발자의 힘든 노력을 쉽게 얻으려고 한다는 말도 하시는데, 도움을 바란다는 것이고, 단순히 이 부분이 오래전부터 사람들이 필요하다고 하는데....왜 답을 주시 않을까? 누구도.......그것이 복잡한 14가지 이상의 파일을 손봐야 한다는 것을 알아가며, 그래 이건 내가 못하겠다.......그걸 하나하나 알려주는 사람이 뭐 때문에  그짓을 할까....없을 듯도....진심으로 이해가 갑니다.....

 

 

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

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

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

로그인