최근 본 상품 오류 질문좀드리겠습니다.

최근 본 상품 오류 질문좀드리겠습니다.

QA

최근 본 상품 오류 질문좀드리겠습니다.

본문

안녕하세요 질문좀 드리겠습니다

상품 8개이상 선택후 보면 전체 나열이되는데요 

옆으로 가기후 다시 첫페이지 오면 4개씩 보이는데

 

$tv_div['img_length'] = 4; // 한번에 보여줄 이미지 수
 

이렇게 설정을 해놨는데 처음부터 전체 나열이 아닌 딱 4개씩만 보이게끔 가능할까요?

아래와같이 클릭했던 상품들이 다나열됩니다.

 

1794703588_1559702502.0008.jpg

 

 


<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$tv_datas = get_view_today_items(true);
$tv_div['top'] = 0;
$tv_div['img_width'] = 70;
$tv_div['img_height'] = 70;
$tv_div['img_length'] = 4; // 한번에 보여줄 이미지 수
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_SKIN_URL.'/style.css">', 0);
?>
<!-- 오늘 본 상품 시작 { -->
<div id="stv">
    <h2>오늘 본 상품</h2>
    <?php if ($tv_datas) { // 오늘 본 상품이 1개라도 있을 때 ?>
    <?php
    $tv_tot_count = 0;
    $k = 0;
    $i = 1;
    foreach($tv_datas as $rowx)
    {
        if(!$rowx['it_id'])
            continue;
        
        $tv_it_id = $rowx['it_id'];
        if ($tv_tot_count % $tv_div['img_length'] == 0) $k++;
        $it_name = get_text($rowx['it_name']);
        $img = get_it_image($tv_it_id, $tv_div['img_width'], $tv_div['img_height'], $tv_it_id, '', $it_name);
        if ($tv_tot_count == 0) echo '<ul id="stv_ul">'.PHP_EOL;
        echo '<li class="stv_item c'.$k.'">'.PHP_EOL;
        echo '<div class="prd_img">';
        echo $img;
        echo '</div>'.PHP_EOL;
 
        echo '</li>'.PHP_EOL;
        $tv_tot_count++;
        $i++;
    }
    if ($tv_tot_count > 0) echo '</ul>'.PHP_EOL;
    ?>
        <div id="stv_btn"></div>
        <span id="stv_pg"></span>
        <script>
        $(function() {
            var itemQty = <?php echo $tv_tot_count; ?>; // 총 아이템 수량
            var itemShow = <?php echo $tv_div['img_length']; ?>; // 한번에 보여줄 아이템 수량
            if (itemQty > itemShow)
            {
                $('#stv_btn').append('<button type="button" id="up"><i class="fa fa-angle-left" aria-hidden="true"></i> 이전</button><button type="button" id="down">다음 <i class="fa fa-angle-right" aria-hidden="true"></i></button>');
            }
            var Flag = 1; // 페이지
            var EOFlag = parseInt(<?php echo $i-1; ?>/itemShow); // 전체 리스트를 3(한 번에 보여줄 값)으로 나눠 페이지 최댓값을 구하고
            var itemRest = parseInt(<?php echo $i-1; ?>%itemShow); // 나머지 값을 구한 후
            if (itemRest > 0) // 나머지 값이 있다면
            {
                EOFlag++; // 페이지 최댓값을 1 증가시킨다.
            }
            $('.c'+Flag).css('display','block');
            $('#stv_pg').text(Flag+'/'+EOFlag); // 페이지 초기 출력값
            $('#up').click(function() {
                if (Flag == 1)
                {
                    alert('목록의 처음입니다.');
                } else {
                    Flag--;
                    $('.c'+Flag).css('display','block');
                    $('.c'+(Flag+1)).css('display','none');
                }
                $('#stv_pg').text(Flag+'/'+EOFlag); // 페이지 값 재설정
            })
            $('#down').click(function() {
                if (Flag == EOFlag)
                {
                    alert('더 이상 목록이 없습니다.');
                } else {
                    Flag++;
                    $('.c'+Flag).css('display','block');
                    $('.c'+(Flag-1)).css('display','none');
                }
                $('#stv_pg').text(Flag+'/'+EOFlag); // 페이지 값 재설정
            });
        });
        </script>
        <?php } else { // 오늘 본 상품이 없을 때 ?>
        <p class="li_empty">없음</p>
        <?php } ?>
</div>
<!-- } 오늘 본 상품 끝 -->

이 질문에 댓글 쓰기 :

답변 1

소스에 답이 있네요.

 

var itemQty = <?php echo $tv_tot_count; ?>; // 총 아이템 수량
var itemShow = <?php echo $tv_div['img_length']; ?>; // 한번에 보여줄 아이템 수량

 

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

회원로그인

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