[ClassASP] 페이징(페이지 목록/리스트) > 기술자료 | 해피정닷컴

[ClassASP] 페이징(페이지 목록/리스트) > 기술자료

본문 바로가기

사이트 내 전체검색

[ClassASP] 페이징(페이지 목록/리스트) > 기술자료

Oracle [ClassASP] 페이징(페이지 목록/리스트)

페이지 정보


본문

1. list.asp 내용

<!--#include virtual="function.asp"-->
<html>
<head>
</head>

<body>
<%
intTCnt = 0          ' 전체 게시물수
intPageCnt = 0    ' 전체 페이지수
intPageSize = 20    ' 한번에 보여줄 게시물수
intPageView = 10    ' 한번에 보여줄 페이지수

intPage = request("page")
If intPage = "" Then
  intPage = 1
End If

strURL = "?idx=" & idx

SQL = " select count(*) as totCnt from aaa a INNER JOIN bbb b ON a.aIDX=b.IDX  "
SQL = SQL & " Where a.aIDX = b.IDX and a.aIDX = " & idx

Set oRs = Conn.Execute(SQL)
intTCnt = CDbl(oRs("totCnt"))

oRs.close
'response.write intTCnt
'response.write strSql

If intTCnt > 0 Then
  If (intTCnt Mod intPageSize) = 0 Then
    intPageCnt = Int(intTCnt / intPageSize)
  Else
    intPageCnt = Int(intTCnt / intPageSize) + 1
  End If
End If


startRow = (intPage - 1) * intPageSize + 1
endRow = startRow + intPageSize - 1

SQL = " SELECT * FROM "
SQL = SQL & " (select / *+index_desc(a aaa_PK)* / rownum rnum "
' order by 정렬 필요없을때
'SQL = SQL & " , a.*, b.bname from aaa a INNER JOIN bbb b ON a.aIDX=b.IDX "
' order by 정렬 필요할때
SQL = SQL & " , a.*, b.bname from  "
SQL = SQL & " (select * from aaa order by send_date desc) a "
SQL = SQL & "  INNER JOIN bbb b ON a.aIDX=b.IDX "
' order by 정렬 끝
SQL = SQL & " Where a.aIDX = b.IDX and a.aIDX = " & idx
SQL = SQL & " and rownum<=" &endRow& ") "
SQL = SQL & " where rnum>= " & startRow
'response.write SQL

Set Rs = Conn.Execute(SQL)

If rs.bof And rs.eof Then
  response.write ""
Else
  cnt  = 0
  Do Until rs.eof
            cnt = cnt + 1
%>

반복내용

<%
  rs.movenext
  Loop
end if
%>


<%
' 페이징 호출
Call PageList(intPage, intPageCnt, intPageView, strURL)
%>
</body>
</html>


2. function.asp  내용

<%
' Paging Function 시작
Sub PageList(Page, PageCnt, PageNum, p_URL)

  Dim s_Page
  Dim iCnt, jCnt
  Page       = CInt(Page)
  PageCnt  = CInt(PageCnt)
  PageNum = CInt(PageNum)

  If Page Mod PageNum = 0 Then
    s_Page = int(Page / PageNum) - 1
  Else
    s_Page = int(Page / PageNum)
  End If


  If PageCnt > 0 Then

    If Page > 1 Then
      Response.Write "<a href='" & p_URL & "&page=1'><img src=""/img/icon_first.gif"" border=""0"" align=""absmiddle"" /></a>"
    Else
      Response.Write "<img src=""/img/icon_first.gif"" border=""0"" align=""absmiddle"" />"
    End If

    response.write "&nbsp; "

    If s_Page >= 1 Then
      Response.Write "<a href='" & p_URL & "&page=" & ((s_Page - 1) * PageNum) + 1 & "'><img src=""/img/icon_prev.gif"" hspace=""3"" border=""0"" align=""absmiddle"" /></a>"
    Else
      Response.Write "<img src=""/img/icon_prev.gif"" hspace=""3"" border=""0"" align=""absmiddle"" />"
    End If

    response.write "&nbsp; "

    iCnt = s_Page * PageNum + 1
    jCnt = 1

    For jCnt = iCnt To (iCnt + PageNum) - 1
      If CStr(jCnt) = CStr(Page) Then
        Response.Write "<b>" & jCnt & "</b>"
      Else
        Response.Write "<a href='" & p_URL & "&page=" & jCnt & "'>" & jCnt & "</a>"
      End If

      If jCnt = PageCnt Or jCnt = (iCnt + PageNum) - 1 Then
        Exit For
      Else
        Response.Write " | "
      End If
    Next

    response.write "&nbsp;"


    If ((s_Page + 1 ) * PageNum) < PageCnt Then
      Response.Write "<a href='" & p_URL & "&page=" & ((s_Page + 1) * PageNum) + 1 & "'><img src=""/img/icon_next.gif"" hspace=""3"" border=""0"" align=""absmiddle"" /></a>"
    Else
      Response.Write "<img src=""/img/icon_next.gif"" hspace=""3"" border=""0"" align=""absmiddle"" />"
    End If

    response.write "&nbsp; "

    If Page < PageCnt Then
      Response.Write "<a href='" & p_URL & "&page=" & PageCnt & "'><img src=""/img/icon_last.gif"" border=""0"" align=""absmiddle"" /></a>"
    Else
      Response.Write "<img src=""/img/icon_last.gif"" border=""0"" align=""absmiddle"" />"
    End If
  Else
    Response.Write "&nbsp;"
  End If

End Sub
' Paging Function 끝

%>


참고자료
http://blog.naver.com/myheredity/130073111279

댓글목록

등록된 댓글이 없습니다.


Total 2,634건 57 페이지
  • RSS
기술자료 목록
1514
일반   16851  2014-01-28 13:19  
1513
일반   17587  2014-01-27 13:37  
1512
PHP   14916  2014-01-26 21:07 ~ 2014-01-27 00:00  
1511
그누보드   14406  2014-01-23 21:16  
1510
Editor   19371  2014-01-21 04:09  
1509
킴스큐   45454  2014-01-17 16:59  
1508
Adobe   39404  2014-01-16 21:25  
1507
일반   14031  2014-01-15 22:21  
1506
Oracle   20534  2014-01-10 15:52  
1505
Oracle   16302  2014-01-09 06:01  
1504
Oracle   18779  2014-01-09 01:20  
1503
Oracle   45639  2014-01-09 01:13  
1502
Oracle   14181  2014-01-08 23:43  
1501
호스팅   13627  2014-01-06 13:49  
1500
그누보드   13117  2013-12-26 19:24  
열람
Oracle   25243  2013-12-25 23:39  
1498
Oracle   37235  2013-12-11 01:59  
1497
Oracle   41255  2013-09-25 15:08  
1496
Oracle   21242  2013-09-30 00:48  
1495
Oracle   24546  2013-10-06 04:24  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.