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

상품리스트 페이지에 상품별 카운트다운 넣기 채택완료

별지기천사 7년 전 조회 3,427

https://sir.kr/yc5_tip/77

참고해서 쇼핑몰에 남은 시간 표시를 적용했습니다 위 링크에서 알려주신 소스를 item.form.skin.php 파일에 추가 했고요 /adm/shop_admin/itemform.php 쇼핑몰 상품관리 페이지에서

 

년   

.

.

.

.

이런식으로 여분필드를 활용해서 년도, 시간 분등을 지정한후에

 

 item.form.skin.php 에다가 종료시간을 여분필드에 적용했습니다

 

그래서 상세 페이지에선 작동이 잘되는것으로 확인이 되었는데요 문제는 상품 리스트 또는 메인 화면의 인기상품등의 최신글 에도 불러오게 할수 있는 방법을 모르겠씁니다 똑같은 방법으로 하려고 했지만

list.10.skin.php 에 적용해 보니 

.

.

.

if($i == 0) echo "

등록된 상품이 없습니다.

\n"; ?>

 

사이에 스크립트 추가만 하면 화면에서 먹통이 되어 버립니다  

 

 

-- 원본소스--

</strong> </p>

<p><!-- 남은 시간 { --> 

<script src="<?php echo G5_JS_URL; ?>/jquery.plugin.js"></script> 

<script src="<?php echo G5_JS_URL; ?>/jquery.countdown.js"></script> 

<!-- } 남은 시간 --> 



<? 

// 종료시간 - Ex) 3월 24일 오후 2시 

$endtime = mktime('14','00','00','03','24','2014') ; 



// 판매 가능하고 재고가 있으며 품절이 아닐때, 종료시간 전일때 

if ( $it[it_use] && !$it[it_soldout] && $it[it_stock_qty] > 0 && $endtime>time()) ) { 



// 남은 시간 

$countdown = $endtime - time(); 

//echo $countdown; 

?> 

<div class="buy_time"> 

<!-- 마감 카운트다운 --> 

<div class="time"> 

<span class="tit">남은 시간</span> 

<div id="dealCountdown" class="count" style="background:none;"></div> 

</div> 

<script type="text/javascript"> 

$(document).ready(function() { 

var d = <?php echo $countdown; ?>; 

var layout  ='<span class="date"><span>{dn}</span><span class="hide">일</span></span>'; 

            layout +='<div>'; 

layout +=' <span>{hnn}</span>'; 

layout +=' <span class="hide">시간</span>'; 

layout +='</div>'; 

layout +='<div>'; 

layout +=' <span>{mnn}</span>'; 

layout +=' <span class="hide">분</span>'; 

layout +='</div>'; 

layout +='<div>'; 

layout +=' <span>{snn}</span>'; 

layout +=' <span class="hide">초</span>'; 

layout +='</div>'; 

$('#dealCountdown').countdown({until: d, format: 'dHMS', labels:['','','','','','',''],layout:layout}); 

}); 

</script> 

</div> 

<? } ?> <strong>
 

 

 

 

문제가 된 list.10.skin.php 소스

 

</strong> </p>

<p><?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가</p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_CSS_URL.'/style.css">', 0);

add_javascript('<script src="'.G5_THEME_JS_URL.'/jquery.shop.list.js"></script>', 10);

?></p>

<p><?php if($config['cf_kakao_js_apikey']) { ?>

<script src="<a href="https://developers.kakao.com/sdk/js/kakao.min.js"></script>" target="_blank" rel="noopener noreferrer">https://developers.kakao.com/sdk/js/kakao.min.js"></script></a>

<script src="<?php echo G5_JS_URL; ?>/kakaolink.js"></script>

<script>

    // 사용할 앱의 Javascript 키를 설정해 주세요.

    Kakao.init("<?php echo $config['cf_kakao_js_apikey']; ?>");

</script></p>

<p>

<script src="/js/jquery.plugin.js"></script> 

<script src="/js/jquery.countdown.js"></script> </p>

<p><?php } ?>

<div class="sct-size"> 

    <button type="button" class="btn-size" id="btn-big">이미지크게보기</button>

    <button type="button" class="btn-size active" id="btn-small">이미지작게보기</button>

</div>

<!-- 상품진열 10 시작 { -->

<div class="sct_wrap" >

<?php

$li_width = intval(100 / $this->list_mod);

$li_width_style = ' style="width:'.$li_width.'%;"';</p>

<p>for ($i=0; $row=sql_fetch_array($result); $i++) {

    if ($i == 0) {

        if ($this->css) {

            echo "<ul id=\"sct_wrap\" class=\"{$this->css}\">\n";

        } else {

            echo "<ul id=\"sct_wrap\" class=\"sct sct_10\">\n";

        }

    }</p>

<p>    if($i % $this->list_mod == 0)

        $li_clear = ' sct_clear';

    else

        $li_clear = '';</p>

<p>    echo "<li class=\"sct_li\"><div class=\"sct_li_wr\">\n";</p>

<p>    echo "<div class=\"img_wr\">";</p>

<p>

    if ($this->href) {

        echo "<div class=\"sct_img\"><a href=\"{$this->href}{$row['it_id']}\" class=\"sct_a\">\n";

    }</p>

<p>    if ($this->view_it_img) {

        echo get_it_image($row['it_id'], $this->img_width, $this->img_height, '', '', stripslashes($row['it_name']))."\n";

    }</p>

<p>    if ($this->href) {

        echo "</a></div>\n";

    }</p>

<p>    echo "<div class=\"sct_btn\">

            <div class=\"sct_cart_btn\">

                <button type=\"button\" class=\"btn_cart\" data-it_id=\"{$row['it_id']}\"><span class=\"sound_only\">장바구니</span><i class=\"fa fa-shopping-cart\" aria-hidden=\"true\"></i></button>

                <button type=\"button\" class=\"btn_wish\" data-it_id=\"{$row['it_id']}\"><span class=\"sound_only\">위시리스트</span><i class=\"fa fa-heart\" aria-hidden=\"true\"></i></button>

            </div>

        </div>\n";</p>

<p>    echo "</div>";</p>

<p>

        echo "<div class=\"sct_cartop\"></div>\n";

    if ($this->href) {

        echo "<div class=\"sct_txt\"><a href=\"{$this->href}{$row['it_id']}\" class=\"sct_a\">\n";

    }</p>

<p>    if ($this->view_it_name) {

        echo stripslashes($row['it_name'])."\n";

    }</p>

<p>    if ($this->href) {

        echo "</a></div>\n";

    }</p>

<p>    if ($this->view_it_price) {

        echo "<div class=\"sct_cost\">\n";

        echo display_price(get_price($row), $row['it_tel_inq'])."\n";

        echo "</div>\n";

    }</p>

<p> </p>

<p> </p>

<p>

    /*   카운트다운 소스 추가 시작   */</p>

<p>

// 종료시간 - Ex) 3월 24일 오후 2시 

$endtime = mktime("$it[it_4];","$it[it_5];","00","$it[it_2];","$it[it_3];",  "$it[it_1];") ;   // 예:  "시", "분", "초", "월" , "일", "년도"</p>

<p>

// 남은 시간 

$countdown = $endtime - time(); 

//echo $countdown; </p>

<p>

echo "

<div class='buy_time'> </p>

<p><div class='time'> 

    <div id='dealCountdown' class='count' style='background:none;'></div> 

</div> 

</div> 

</div> 

;"</p>

<p>

echo "

<script type='text/javascript'> 

$(document).ready(function() { 

var d = <?php echo $countdown; ?>; 

var layout  ='<span class='date'><span>{dn}</span><span class='hide'>일</span></span>'; 

            layout +='<div>'; 

layout +='    <span>{hnn}</span>'; 

layout +='    <span class=''>:</span>'; 

layout +='</div>'; 

layout +='<div>'; 

layout +='    <span>{mnn}</span>'; 

layout +='    <span class=''>:</span>'; 

layout +='</div>'; 

layout +='<div>'; 

layout +='    <span>{snn}</span>'; 

layout +='    <span class=''></span>'; 

layout +='</div>'; 

$('#dealCountdown').countdown({until: d, format: 'dHMS', labels:['','','','','','',''],layout:layout}); 

}); 

</script> 

;"</p>

<p>/*   카운트다운 소스 추가 끝   */</p>

<p> </p>

<p> </p>

<p>

    echo "<div class=\"sct_icon_wr\">".item_icon2($row)."</div>\n";</p>

<p>

    echo "</div></li>\n";

}</p>

<p>if ($i > 0) echo "</ul>\n";</p>

<p>if($i == 0) echo "<p class=\"sct_noitem\">등록된 상품이 없습니다.</p>\n";

?></p>

<p>

</div>

<script></p>

<p>    $(".sct-size button").click(function () {

        $(".sct-size button").removeClass("active");

        $(this).addClass("active");

    });

    $("#btn-small").click(function () {

        $(".sct_wrap").removeClass("big").addClass("small");

    });

    $("#btn-big").click(function () {

        $(".sct_wrap").removeClass("small").addClass("big");

    });</p>

<p></script>

<!-- } 상품진열 10 끝 --></p>

<p><strong>
 

 

 

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

답변 2개

채택된 답변
+20 포인트
7년 전

for문 loop만큼 id='dealCountdown'가 반복 되겠죠?

한 페이지에 id가 동일한 것이 있으면 안된다는 것을 모르고있는 것 아닌가요?

 

이것만 고쳐서 될런지 모르겠습니다만 id가 중복 되지않게 두 군데를 고쳐보세요

id='dealCountdown<=$i?>'

$('#dealCountdown').countdown

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

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

좋은 지적 감사힙니다

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

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

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

로그인