[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 36건 1 페이지
  • RSS
기술자료 목록
36
Oracle   4872  2021-12-08 18:49 ~ 2021-12-08 19:30  
35
Oracle   5067  2021-12-02 08:59 ~ 2021-12-02 14:59  
34
Oracle   18655  2017-04-27 01:54  
33
Oracle   15216  2017-04-01 23:05  
32
Oracle   35625  2016-02-03 21:19  
31
Oracle   28384  2016-02-03 20:40 ~ 2016-02-16 00:00  
30
Oracle   18920  2016-01-22 14:19  
29
Oracle   13942  2015-02-26 23:13  
28
Oracle   20498  2014-01-10 15:52  
27
Oracle   16271  2014-01-09 06:01  
26
Oracle   18712  2014-01-09 01:20  
25
Oracle   45583  2014-01-09 01:13  
24
Oracle   14165  2014-01-08 23:43  
열람
Oracle   25210  2013-12-25 23:39  
22
Oracle   37185  2013-12-11 01:59  
21
Oracle   41181  2013-09-25 15:08  
20
Oracle   21188  2013-09-30 00:48  
19
Oracle   24514  2013-10-06 04:24  
18
Oracle   15965  2013-10-07 06:40  
17
Oracle   16364  2013-10-06 05:45  

검색

해피정닷컴 정보

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

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