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

상품리스트에서 위시리스트 버튼 구현 질문입니다~ 채택완료

lacomparte 8년 전 조회 3,169

list.10.skin.php 에서 

적당한 위치에

</p><p>echo "<div class=\"sct_quick\">\n";</p><p><span style="font-size: 11pt;">echo "<a href=\"{$this->href}{$row['it_id']}\"><img src=\"".G5_SHOP_URL."/img/btn_view.gif\"><span class=\"sound_only\">상세페이지 보기</span></a>";</span></p><p>echo "<a href=\"javascript:item_wish(document.fitem,'";</p><p>echo $row['it_id'];</p><p>echo "');\"><img src=\"".G5_SHOP_URL."/img/btn_wish.gif\"><span class=\"sound_only\">위시리스트에 담기</span></a>";</p><p>echo "</div>\n"</p><p>

 

요 코드를 넣고

li 끝나기 전에

 

</p><p><script></p><p>function item_wish(f, it_id)</p><p>{</p><p><span class="Apple-tab-span" style="font-size: 11pt; white-space: pre;">	</span><span style="font-size: 11pt;">f.url.value = "<?php echo G5_SHOP_URL; ?>/wishupdate.php?it_id=" + <?= $row['it_id']?>;</span> </p><p><span class="Apple-tab-span" style="white-space:pre">	</span>f.action = "<?php echo G5_SHOP_URL; ?>/wishupdate.php";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>f.submit();</p><p>}</p><p></script></p><p>

 위의 스크립트를 추가해주었습니다.

그리고 리스트에 만들어 둔 위시리스트로 보내는 버튼을 누르게 되면

</p><p>(index):565 Uncaught TypeError: Cannot read property 'url' of undefined</p><p>    at item_wish ((index):565)</p><p>    at <anonymous>:1:1</p><p>

 

이 에러가 뜨는데 f.url.value 에서 url 값이 없어서 그런것 같은데..

어떤 값으로 정의해 주어야 하나요 ㅠ

item.form.skin.php 참고해서 하고있는데

어떤값을 할당해야 하는지 모르겠네요;

 

 

 

 

 

 

 

아래는

list.10.skin.php 파일 코드입니다

</p><p><?php</p><p>if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p><p> </p><p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨</p><p>// 중복으로 호출시 G5_SHOP_CSS_URL이 변수명으로 출력됨 따라서, 주석처리함 add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_CSS_URL.'/style.css">', 0);</p><p>?></p><p> </p><p><!-- 상품진열 10 시작 { --></p><p><?php</p><p>for ($i=1; $row=sql_fetch_array($result); $i++) {</p><p>    if ($this->list_mod >= 2) { // 1줄 이미지 : 2개 이상</p><p>        if ($i%$this->list_mod == 0) $sct_last = ' sct_last'; // 줄 마지막</p><p>        else if ($i%$this->list_mod == 1) $sct_last = ' sct_clear'; // 줄 첫번째</p><p>        else $sct_last = '';</p><p>    } else { // 1줄 이미지 : 1개</p><p>        $sct_last = ' sct_clear';</p><p>    }</p><p> </p><p>    if ($i == 1) {</p><p>        if ($this->css) {</p><p>            echo "<ul class=\"{$this->css}\">\n";</p><p>        } else {</p><p>            echo "<ul class=\"sct sct_10\">\n";</p><p>        }</p><p>    }</p><p> </p><p>    echo "<li class=\"sct_li{$sct_last}\" style=\"width:{$this->img_width}px\">\n";</p><p> </p><p>    if ($this->href) {</p><p>        echo "<div class=\"sct_img\"><a href=\"{$this->href}{$row['it_id']}\" class=\"sct_a\">\n";</p><p>    }</p><p> </p><p>    if ($this->view_it_img) {</p><p>        echo get_it_image($row['it_id'], $this->img_width, $this->img_height, '', '', stripslashes($row['it_name']))."\n";</p><p>    }</p><p> </p><p>    if ($this->href) {</p><p>        echo "</a></div>\n";</p><p>    }</p><p> </p><p>    if ($this->view_it_icon) {</p><p>        echo "<div class=\"sct_icon\">".item_icon($row)."</div>\n";</p><p>    }</p><p> </p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo "<div class=\"sct_quick\">\n";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo "<a href=\"{$this->href}{$row['it_id']}\"><img src=\"".G5_SHOP_URL."/img/btn_view.gif\"><span class=\"sound_only\">상세페이지 보기</span></a>";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo "<a href=\"javascript:item_wish(document.fitem,'";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo $row['it_id'];</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo "');\"><img src=\"".G5_SHOP_URL."/img/btn_wish.gif\"><span class=\"sound_only\">위시리스트에 담기</span></a>";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>echo "</div>\n";</p><p> </p><p>    if ($this->view_it_id) {</p><p>        echo "<div class=\"sct_id\"><".stripslashes($row['it_id'])."></div>\n";</p><p>    }</p><p> </p><p>    if ($this->href) {</p><p>        echo "<div class=\"sct_txt\"><a href=\"{$this->href}{$row['it_id']}\" class=\"sct_a\">\n";</p><p>    }</p><p> </p><p>    if ($this->view_it_name) {</p><p>        echo stripslashes($row['it_name'])."\n";</p><p>    }</p><p> </p><p>    if ($this->href) {</p><p>        echo "</a></div>\n";</p><p>    }</p><p> </p><p>    if ($this->view_it_basic && $row['it_basic']) {</p><p>        echo "<div class=\"sct_basic\">".stripslashes($row['it_basic'])."</div>\n";</p><p>    }</p><p> </p><p>    if ($this->view_it_cust_price || $this->view_it_price) {</p><p> </p><p>        echo "<div class=\"sct_cost\">\n";</p><p> </p><p>        if ($this->view_it_cust_price && $row['it_cust_price']) {</p><p>            echo "<p><span class=\"sct_c_cost\">소비자가격<span class=\"sct_vat\">(VAT포함)</span></span><del>".display_price($row['it_cust_price'])."</del></p>\n";</p><p>        }</p><p> </p><p>        if ($this->view_it_price) {</p><p>            echo "<p><span class=\"sct_d_cost\">할인가격<span class=\"sct_vat\">(VAT포함)</span></span><strong>".display_price(get_price($row), $row['it_tel_inq'])."</strong></p>\n";</p><p>        }</p><p> </p><p>        echo "</div>\n";</p><p> </p><p>    }</p><p> </p><p>    if ($this->view_sns) {</p><p>        $sns_top = $this->img_height + 10;</p><p>        $sns_url  = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];</p><p>        $sns_title = get_text($row['it_name']).' | '.get_text($config['cf_title']);</p><p>        echo "<div class=\"sct_sns\" style=\"top:{$sns_top}px\">";</p><p>        echo get_sns_share_link('facebook', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_fb_s.gif');</p><p>        echo get_sns_share_link('twitter', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_twt_s.gif');</p><p>        echo get_sns_share_link('googleplus', $sns_url, $sns_title, G5_SHOP_SKIN_URL.'/img/sns_goo_s.gif');</p><p>        echo "</div>\n";</p><p>    }</p><p>?></p><p><script type="text/javascript"></p><p>// 상품보관</p><p>function item_wish(f, it_id)</p><p>{</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>f.url.value = "<?php echo G5_SHOP_URL; ?>/wishupdate.php?it_id=" + <?= $row['it_id']?>;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>f.action = "<?php echo G5_SHOP_URL; ?>/wishupdate.php";</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>f.submit();</p><p>}</p><p></script></p><p><?php </p><p>    echo "</li>\n";</p><p>}</p><p> </p><p>if ($i > 1) echo "</ul>\n";</p><p> </p><p>if($i == 1) echo "<p class=\"sct_noitem\">등록된 상품이 없습니다.</p>\n";</p><p>?></p><p><!-- } 상품진열 10 끝 --></p><p>

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

답변 1개

8년 전

javascript:item_wish(document.fitem <---여기서 지정하는

fitem이라는 form 이 있어야죠

for문 완전히 끝나고난 부분에 만들어넣으세요

또한

function item_wish(f, it_id)<-- 이 함수를  /li 안쪽에다 넣어서 반복 되게 하면 안됩니다

for문 끝나고 나서  116행 다음에 한번만 넣으세요

 

그리고 function item_wish(f, it_id)함수에서 아래와 같이 수정

?it_id=" + $row['it_id']?>; ---> ?it_id=" it_id;

$('#it_idk').val(it_id); //<----추가

 

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

답변에 대한 댓글 1개

l
lacomparte
8년 전
이번엔 value 값이 없다고 나옵니다;

Uncaught TypeError: Cannot set property 'value' of undefined
at item_wish ((index):540)
at <anonymous>:1:1



[code]
<!-- } 상품진열 10 끝 -->
<form name="fitem" method="post">
<input type="hidden" name="it_id[]" id="it_idk" value="">
<input type="hidden" name="url">
</form>

<script type="text/javascript">

// 상품보관
function item_wish(f, it_id)
{
f.url.value = "<?php echo G5_SHOP_URL; ?>/wishupdate.php?it_id=" + it_id;
$('#it_idk').val(it_id);
f.action = "<?php echo G5_SHOP_URL; ?>/wishupdate.php";
f.submit();
}
</script>
[/code]

이렇게 추가해 줬구요ㅠ

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

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

로그인