发新话题
打印

在asp中通过getrows实现数据库记录分页的一段代码

在asp中通过getrows实现数据库记录分页的一段代码


%@ Language = VBSCRIPT %
& V! `4 C# Q/ r. w$ d0 E% Option Explicit %
, c0 i, \, a2 u1 ~6 `%
! l, m9 |+ J/ Z; ?  b9 a' @rem 在asp中通过getrows实现数据库记录分页的一段代码, `. ]  K& W. X! L9 Q- F
Dim iStart, iOffset
# m% ]& \, M" V2 GiStart = Request("Start")
% L/ J' W/ q( J% e3 G6 [4 A; LiOffset = Request("Offset")
5 [2 S# Z8 y. B0 t0 x& H$ s, D
/ R4 j4 D/ X+ n. w+ ]9 a  
2 K' C- [( w  G. O) r
3 N$ Y) }$ Q8 Oif Not IsNumeric(iStart) or Len(iStart) = 0 then
4 K$ L3 C4 }- ~4 f7 ^iStart = 0% J/ L" B1 |) @  ~; ^6 l
else( Q$ n* K: T% m  I
iStart = CInt(iStart)
4 H: T$ ]6 b0 g4 ]( {: @4 \2 |$ @end if  2 }  y: e5 S! w5 d

$ ]4 J" p( f* ?; E* pif Not IsNumeric(iOffset) or Len(iOffset) = 0 then" B* l/ D0 i3 C* f& g( e
iOffset = 30& q% D1 V! u$ t* o* ]  e: w" Z1 y
else1 J% `+ `( L7 N% h+ _1 T, {% k5 n
iOffset = Cint(iOffset)
( D$ Y: [; H/ G# dend if  
- Z( A) Q. ]: i4 v  K- s# Z# t
! Z) n# B+ H  H9 R+ V+ p& ^Response.Write "Viewing "  iOffset  " records starting at record "  iStart  "BR"  . H6 D( i( b1 J6 ^
  Y" [* r$ u6 k% Q; @+ u
Dim objConn, objRS  L# Y& p6 ^; ~, i3 m
Set objConn = Server.CreateObject("ADODB.Connection")
+ x( R8 r6 [+ s, ^0 U* T'objConn.Open "DSN=MP3"
/ F: ]: Y0 ]! W" Sdim connstr
8 ~/ q' t) m7 @5 U; Adim db1 x3 u! N& @" Q' q+ A
db="csnjimageman.mdb"
4 M  X5 Y* g5 x2 _connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="  Server.MapPath(""db"")
' Z5 B! d$ Y3 U" k& ]2 Qobjconn.Open connstr  # u- Y* S, d. q5 L5 ?' P8 ^& V# n
( d( A( n% |& J, |4 l5 n$ j
Set objRS = Server.CreateObject("ADODB.Recordset")
  i6 K8 z7 s. ~! U$ D2 P' }objRS.Open "SELECT * FROM imageinfo", objConn  
/ A  j& y5 m; H+ g- a
% D4 ?3 k4 h+ A# G) \( b% jDim aResults' n5 z# x" M3 N5 P$ t0 ~' Z8 i
aResults = objRS.GetRows  
% ~* B: y  {+ z- r$ C/ r( n
1 o4 m& f# U# _) [  t& HobjRS.Close  D+ h0 }7 P  C& z
Set objRS = Nothing  
+ D6 N# \4 C3 |1 p$ b# Q
6 A3 z1 @3 f( }objConn.Close/ i% d2 |6 E) ~$ s# B7 ~( v
Set objConn = Nothing  + b  e: F+ K, S4 }) G
3 M. _+ k& E; \, Z" e/ ]/ j$ a) g
0 n3 w" M$ L1 n& `- y7 F4 X
Dim iRows, iCols, iRowLoop, iColLoop, iStop
% y1 V) ~) b# n3 ]' wiRows = UBound(aResults, 2)1 t3 d  K) S0 I) a7 l2 j
iCols = UBound(aResults, 1)  ' `3 e. v9 X1 v, [* D
; Q" l* |- Y$ M# j! U1 q/ n) ^
If iRows  (iOffset   iStart) Then
" l! ^8 K9 k, a! r& b# wiStop = iOffset   iStart - 1. b0 X$ D6 z  D$ s
Else5 s$ Y+ a3 ~( U" |4 q1 y: F. \: S
iStop = iRows* v8 r$ ]1 R' H* Q( o6 c
End If  9 ]( D% P3 l9 b" t7 M* I. e

' `6 P( q6 Z% j: LFor iRowLoop = iStart to iStop
) s( |, f& W, C) }) pFor iColLoop = 0 to iCols) j6 h4 W3 T& q6 E6 ]7 V! u8 a
Response.Write aResults(iColLoop, iRowLoop)  " "/ m5 z- E( p# Z+ ]
Next
/ C4 g5 z8 {4 m9 ]) OResponse.Write "BR"
- f2 n9 L4 v8 e" f) ?Next   2 m4 e# r" G- p) x- w! @! |; H
8 X  S3 V2 l* x3 `
Response.Write "P"
( n  S6 X/ |, ]* [, {if iStart  0 then
5 `2 a% d' L4 q, Z# B# g8 f'Show Prev link
  m1 Y! J! L0 S% S! \$ C; J- H2 NResponse.Write "A HREF=""GetRows.asp?Start="  iStart-iOffset  _
+ p/ p5 S, r5 t( I/ \"Offset="  iOffset  """Previous "  iOffset  "/A"
2 k8 C+ T8 M% |: ?$ Cend if  7 h8 j3 o! V+ ~/ ^5 A

3 H+ W' y. }7 W* x; p5 Iif iStop  iRows then! ]' A& r8 z; X9 Y
'Show Next link1 M' |8 g& g& Q5 d/ b% i) m
Response.Write " A HREF=""GetRows.asp?Start="  iStart iOffset  _& B% ?1 f/ F3 Y) y1 B0 U' Z
"Offset="  iOffset  """Next "  iOffset  "/A"
, R2 f$ u2 ?4 U) r" ^end if* P) t4 I3 j% x/ m8 W# n2 u+ A
%



点击图标进入精品网摘收藏 欢迎大家加入网络收藏夹

TOP

发新话题