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

주문내역 한페이지당 출력되는 리스트 갯수를 선택하는 방식으로 변경하려고 합니다. 채택완료

세종2 5년 전 조회 4,392

영카트 5.3.3.2 버전 사용.

 

관리자화면 > 주문내역 페이지에 한 페이지당 출력되는 리스트 갯수를

25개씩보기, 50개씩보기, 100개씩보기 등 select 로 선택할수 있게 하려고 합니다.

고수님들 가르쳐주세요~

 

/adm/shop_admin/orderlist.php

 

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

답변 1개

채택된 답변
+20 포인트

보통 보여 주는 코드는 

$rows = $config['cf_page_rows']; 으로 기본설정값을 가지고 옵니다. 

해당 셀렉트하셔서 보여주는 갯수를 변경하실려면 몇가지 수정을 해주셔야 하는 부분이 있습니다. 

먼저 셀렉트시 form으로 전송을 하셔야 합니다. 

<?
//페이지 값이 있을때
if($sel_page){
  $rows = $sel_page;
}else{//페이지 값이 없을때 기본값으로 설정
  $rows = $config['cf_page_rows'];
}

//페이징을 위해 해당 페이지 변수를 추가
$qstr1 = "od_status=".urlencode($od_status)."&amp;od_settle_case=".urlencode($od_settle_case)."&amp;od_misu=$od_misu&amp;od_cancel_price=$od_cancel_price&amp;od_refund_price=$od_refund_price&amp;od_receipt_point=$od_receipt_point&amp;od_coupon=$od_coupon&amp;fr_date=$fr_date&amp;to_date=$to_date&amp;sel_field=$sel_field&amp;search=$search&amp;save_search=$search&sel_page=$sel_page";
?>


<form name="frmpage" class="local_sch01 local_sch">
<select name="sel_page" id="sel_page">
    <option value="10" <?php echo get_selected($sel_page, '10'); ?>>10</option>
    <option value="20" <?php echo get_selected($sel_page, '20'); ?>>20</option>
    <option value="30" <?php echo get_selected($sel_page, '30'); ?>>30</option>
    <option value="50" <?php echo get_selected($sel_page, '50'); ?>>50</option>
    <option value="10" <?php echo get_selected($sel_page, '100'); ?>>100</option>
</select>
</form>

<script>
  $(function(){
    //셀렉트 변경시 폼 summit 
    $("#sel_page").change(function(){
      $("#sel_page").submit();
    });
  });
</script>

 

제가 테스트를 못해 봤는데 대략 이런식으로 구현을 하시면 될것 같습니다. 

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

답변에 대한 댓글 1개

세종2
5년 전
질풍이랑님께서 알려주신 소스를 추가해보았는데
"undefined 하실 항목을 하나 이상 선택하세요."
라고 팝업 경고 멘트가 뜹니다. 뭐가 잘못 된걸까요?ㅠㅠ

1. $rows = $config['cf_page_rows']; 대신에 아래 코드 추가

//페이지 값이 있을때
if($sel_page){
$rows = $sel_page;
}else{//페이지 값이 없을때 기본값으로 설정
$rows = $config['cf_page_rows'];
}

2. 아래 코드 끝에 &sel_page=$sel_page 추가
$qstr1 = "od_status=".urlencode($od_status)."&od_settle_case=".urlencode($od_settle_case)."&od_misu=$od_misu&od_cancel_price=$od_cancel_price&od_refund_price=$od_refund_price&od_receipt_point=$od_receipt_point&od_coupon=$od_coupon&fr_date=$fr_date&to_date=$to_date&sel_field=$sel_field&search=$search&save_search=$search&sel_page=$sel_page";

3. 주문 내역 목록 위에 form태그와 script 추가하였습니다.
<form name="forderlist" id="forderlist" onsubmit="return forderlist_submit(this);" method="post" autocomplete="off">
<input type="hidden" name="search_od_status" value="<?php echo $od_status; ?>">

<form name="frmpage" class="local_sch01 local_sch">
<select name="sel_page" id="sel_page">
<option value="15" <?php echo get_selected($sel_page, '15'); ?>>15</option>
<option value="25" <?php echo get_selected($sel_page, '25'); ?>>25</option>
<option value="50" <?php echo get_selected($sel_page, '50'); ?>>50</option>
<option value="75" <?php echo get_selected($sel_page, '75'); ?>>75</option>
<option value="100" <?php echo get_selected($sel_page, '100'); ?>>100</option>
</select>
</form>
<script>
$(function(){
//셀렉트 변경시 폼 summit
$("#sel_page").change(function(){
$("#sel_page").submit();
});
});
</script>

<div class="tbl_head01 tbl_wrap">
<table id="sodr_list">
<caption>주문 내역 목록</caption>
. . . . .
</table>
</div>
. . . . .
</form>

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

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

로그인