세이박스

'페이징'에 해당되는 글 2건

  1. PHP 게시판 페이징 처리
  2. [ASP] asp 페이징

PHP 게시판 페이징 처리

웹프로그램

$skippage=10;
$pagesize=20;
if(!$page){
$page=1;
}
$kkk=($page-1)*$pagesize;
 
if(!$cmd){
  $qry_cnt="SELECT * FROM tech WHERE field_no=$field_no";
  $qry="SELECT * FROM tech WHERE field_no=$field_no ORDER BY
  wdate DESC LIMIT $kkk, $pagesize";
}else{
  switch($sec){
    case 1:
      $qry_cnt="SELECT * FROM tech WHERE field_no=$field_no AND subject LIKE '%$string%'";
      $qry="SELECT * FROM tech  WHERE field_no=$field_no AND subject
  LIKE '%$string%' ORDER BY wdate DESC LIMIT $kkk, $pagesize";
      break;
    case 2:
      $qry_cnt="SELECT * FROM tech  WHERE field_no=$field_no AND content LIKE '%$string%'";
      $qry="SELECT * FROM tech  WHERE field_no=$field_no AND content
  LIKE '%$string%' ORDER BY wdate DESC LIMIT $kkk, $pagesize";
      break;
    }
}

$rs_cnt=mysql_query($qry_cnt);
$total_record=mysql_num_rows($rs_cnt);
$totalpage=ceil($total_record/$pagesize);
 
$rs=mysql_query($qry);
if(!$rs){
  Error();
}


##########################################

<?
  $i=$total_record-$pagesize*($kkk/$pagesize);
  while($row=mysql_fetch_array($rs)){
?>
 
<?echo $i?>

<?
 $i--;
}
?>

############################################

<!--글 번호 시작//-->
<?
  $temp1=ceil($page/$skippage)-1;
  $temp2=$temp1*$pagesize;
  $temp3=ceil($totalpage/$skippage)-1;

  $prev=$temp2;
  if($prev>0){
    echo "<a href='./list.php?page=1&field_no=$field_no&cmd=
$cmd&sec=$sec&string=$string'><font size=-2>[맨앞]</font></a>";
    echo "<a href='./list.php?page=$prev&field_no=$field_no&cmd=
$cmd&sec=$sec&string=$string'>≪</a>";
  }

  $pagelist=$temp2;

  for($j=1;$j<=$skippage;$j++){
    $pagelist=$temp2+$j;
    if($totalpage<$pagelist){
      break;
    }
    if($pagelist<>$page){
      echo "<a href='./list.php?page=$pagelist&field_no=$field_no&cmd=
  $cmd&sec=$sec&string=$string'><font size=-2>[$pagelist]</font></a>";
    }else {
      echo "<b>".$pagelist."</b>";
    }
}

  $post=$temp2+$skippage+1;

  if($temp1<$temp3){
    echo "<a href='./list.php?page=$post&field_no=$field_no&cmd=$cmd
&sec=$sec&string=$string'>≫</a>";
    echo "<a href='./list.php?page=$totalpage&field_no=$field_no&cmd=$cmd
&sec=$sec&string=$string'><font size=-2>[맨뒤]</font></a>";
  }
?>   
<!--글 번호 끝//-->
</pre>

[ASP] asp 페이징

웹프로그램


'페이지값 받기

  if  request("page")= "" then    
      page = 1
  else
      page = request("page")    
  end if
 
'한페이지에 보여줄 리스트갯수
listnum = 10
 
'전체리스트값
sqlt = "select count(코드값) from tablename"
set rst = dbcon.execute(sqlt)
totalnum = rst(0)
 
  SQL = "select * from tablename"
  Set Rs = Server.CreateObject("ADODB.Recordset")
  Rs.PageSize = listnum
 
  Rs.Open SQL, Conn, 1     '커서타입이 1이어야 하나? 흠흠
 
  totalpage = rs.PageCount       '전체페이지의 수를 저장
  rs.AbsolutePage = page         '현재 레코드셋의 커서를 페이지에 맞게 옮겨준다.
 
  start = (page-1) * listnum
  num = totalnum - start

  Do Until Rs.eof Or num > Rs.PageSize  '페이지가 EOF 이거나 혹은 페이지크기를 넘길경우
  %>
 페이징 출력시 <%=num%>
  출력할 내용들... 좔좔좔<br>
  <%
  Rs.movenext
  loop
  num = num - 1
  rs.close
 %>
 
 하단 페이징 부분

    <% if page <> 1 then %>
     <a href ="list.asp?page=<%=page-1%>">이전페이지</a>
    <% else %>
     <a href ="ist.asp?page=<%=page%>">이전페이지</a>
    <% end if %>
   
    <%for i = 1 to totalpage %>
    <a href ="list.asp?page=<%=i%>"><%=i%></a>
    <% next %>
   
    <% if(Cint(page) <> Cint(totalpage)) then %>
     <a href ="list.asp?page=<%=page+1%>">다음페이지</a>
    <% else %>
     <a href ="list.asp?page=<%=page%>">다음페이지</a>
    <% end if %>