´Ó¿ªÊ¼Ñ§Ï°µ½Ê¹ÓÃASPµ½ÏÖÔÚҲдÁ˲»ÉÙ³ÌÐòÁË£¬×îÁîÈËÍ·Í´µÄÊÇдÊý¾Ý·ÖÒ³£¬Ã¿´Î¶¼ÊÇÓÉÓÚ¼¸¸ö±äÁ¿Ãû»ò¼¸¸ö²ÎÊýµÄ²»Í¬£¬Òò¶øÐèҪÿ´Î¶¼Ð´ÄÄÒ»¶ÎÈß³¤¶øÓÖ·±ÔӵķÖÒ³´úÂ룬´úÂ볤ÁËʹµÃ³ÌÐòµÄ¿É¶ÁÐÔ±ä²î£¬ÈÝÒ׳ö²î£¬µ÷ÊÔ°ëÌìÒ²ÕÒ²»³ö´íÔÚÄÄÀËùÒÔÂýÂýµÄÎÒ¿ªÊ¼Ê¹ÓÃÒ»Ð©ÍøÉϵÄÌṩµÄ·ÖÒ³º¯Êý»ò·ÖÒ³Àà¡£µÄȷʡʲ»ÉÙ£¬µ«ÊÇͨ³£µÄº¯ÊýºÍÀàµÄ×ö·¨¶¼ÊǾÍÊý¾ÝÏÔʾ²¿·ÖÒ²·â×°ÁËÆðÀ´£¬Ã¿´ÎΪÁË´ïµ½×Ô¼ºÐèÒªµÄÏÔÇóЧ¹ûҪȥ¸Ä¶¯º¯Êý»òÕßÀàµÄ±¾Éí£¬ËùÒÔʹÓÃÆðÀ´Ò²²»ÊÇÔõô·½±ã,×Ô¼ºÐ´µÄ·ÖÒ³¸ÄÆðÀ´ÒѾ¹»¸´ÔÓÁË£¬¸ü²»ÒªËµ±ðÈ˵ÄÁË¡£
ËùÒÔ³Ã×òÌìÓпÕ×Ô¼ºÐ´ÁËÒ»¸ö·ÖÒ³µÄÀ࣬×ÔÎҸоõÁ¼ºÃ£¨²»ÒªÓü¦µ°ÔÒÎÒ£©£¬ÔÚÕâÀïºÍ´ó¼Ò·ÖÏíÒ»ÏÂ×Ô¼ºµÄ¾Ñ飨̸²»ÉϾÑ飬¸ÐÏë°É£©¡£ÔÚÕâÀïÎÒÒ²²»Ïë˵·ÖÒ³µÄÔÀíÁË£¬·´Õý´ó¼Ò¶¼¶®£¬ÒªÎÒÍùÉîÈëµÄ̸ÎÒÒ²²»»á¡£ºÇºÇ¡£
Ò»¡¢ ´´½¨·ÖÒ³ÀàµÄÄ¿±ê
ÔÚд֮ǰ£¬ÎÒÔøÏë¹ý£¬ÎÒ¾¿¾¹ÒªÐ´ÔõôÑùÒ»¸öÀ࣬»ØÏëÆðÒÔǰд·ÖÒ³¹ý³ÌµÄʱºò£¬×î·³µÄιýÓÚÿ´Î¶¼ÒªÐ´ÄÄÒ»¶Î¸´ÔӵķÖÒ³´úÂ룬×î´óµÄ·³ÄÕÿ´Î¶¼Êǽö½ö¼¸¸ö±äÁ¿ÃûµÄ²»Í¬¡£ËùÒÔµÚÒ»¸öҪʵÏֵľÍÊÇÒª°ÑÕâ¸ö·â×°ÆðÀ´£¬µÚ¶þ¸ö¾ÍÊÇÒª°Ñ·ÖÒ³µÄµ¼º½ÌõÒ²·â×°ÆðÀ´,µÚÈý¸ö£¬²»Ï°¹ßÄÄЩ°ÑÊý¾ÝÏÔʾ²¿·ÖÒ²·â×°ÆðÀ´µÄ·½·¨£¬Õâ²»ÊÇ·½±ã±à³Ì£¬¶ÔÓëÄÄЩ¶ÔÏÔʾЧ¹ûÿ´Î¶¼²»Í¬µÄÓû§À´Ëµ£¬±È×Ô¼ºÐ´·ÖÒ³»¹ÒªÂé·³¡£ËùÒÔÎÒµÄÄ¿µØ¾ÍÊǶÔRecordSet½øÐÐһЩ¼òµ¥µÄ·â×°¡£
¶þ¡¢´´½¨¹ý³Ì
ËùÒÔÎÒдµÄµÚÒ»¸öÊôÐÔ£¬¾ÍÊÇ·µÒ»¸ö¾¹ý´¦ÀíµÄRecordSet
Public Property Get GetRs()
Set XD_Rs=Server.createobject("adodb.recordset")
XD_Rs.PageSize=PageSize
XD_Rs.Open XD_SQL,XD_Conn,1,1
If not(XD_Rs.eof and XD_RS.BOF) Then
If int_curpage>XD_RS.PageCount Then
int_curpage=XD_RS.PageCount
End If
XD_Rs.AbsolutePage=int_curpage
End If
Set GetRs=XD_RS
End Property
Õâ¸öÊôÐÔµÄ×÷ÓÃÊǸü¾ÝÖ¸¶¨RecordSet µÄµ±Ç°Ã棬²¢µ½Ö¸ÕëÖ¸Ïòµ±Ç°Ò³µÄµÚÒ»Ìõ¼Ç¼,Õâ¸öÓ¦¸Ã¾ÍÊÇÕû¸öÀàµÄÍê³É·ÖÒ³µÄºËÐÄÁË£¬µ±È»£¬ÆäÖеÄһЩ²ÎÊýÊÇ¿¿ÆäËüµÄÊôÐÔÀ´»ñÈ¡£¬ËùÒÔÕâÀï˳±ã½éÉÜÒ»¸öÕâ¸öÀàËùÒªµÄ»ù±¾²ÎÊý
'=============================================
'GetConn µÃµ½Êý¾Ý¿âÁ¬½Ó
'
'=============================================
Public Property Let GetConn(obj_Conn)
Set XD_Conn=obj_Conn
End Property
'=============================================
'GetSQL µÃµ½²éѯÓï¾ä
'
'==============================================
Public Property Let GetSQL(str_sql)
XD_SQL=str_sql
End Property
'===============================================
'PageSize ÊôÐÔ
'ÉèÖÃÿһҳµÄ·ÖÒ³´óС
'===============================================
Public Property Let PageSize(int_PageSize)
If IsNumeric(Int_Pagesize) Then
XD_PageSize=CLng(int_PageSize)
Else
str_error=str_error & "PageSizeµÄ²ÎÊý²»ÕýÈ·"
ShowError()
End If
End Property
Public Property Get PageSize
If XD_PageSize="" or (not(IsNumeric(XD_PageSize))) Then
PageSize=10
Else
PageSize=XD_PageSize
End If
End Property
ÒÔÉϼ¸¸öÊÇÔÚʹÓÃÀàµÄ¹ý³Ì±ØÐèÒªÖ¸¶¨µÄ²ÎÊý£¬Ôø¾ÎÒÔÚдÊôÐÔµÄʱºò¶Ôÿ¸ö´«ÈëµÄ²ÎÊý¼ÓÉÏIsObject(obj_conn)µÈÅжϣ¬ÎªµÄÊÇÀàµÄ½¡×³£¬µ«ÊǺóÀ´ÏëÀ´ÏëÈ¥£¬Õâ¸ö¶ÔÓëASPÀ´ËµÃ»ÓбØÒª£¬²»¼Ó»¹ÄܼӿìµãËÙ¶È£¬ÖÁÓÚΪʲôÕâÑù£¬ÎÒÏë¸÷λÔÚʹÓùý³ÌÖÐÒ²»á·¢ÏÖ£¬¼Ó»¹²»Èç²»¼Ó¡£ÕâÒ²ÊÇÎÒ¾¹ýÁË˼Ïë¶·ÕùÒÔºó²ÅÈ¥µôÁË£¬Ö»±£ÁôÁËһЩ±ØÒªµÄÑéÖ¤¡£
»¹ÓÐÒ»¸ö²ÎÊý¾ÍÊǵ±Ç°Ò³µÄ»ñµÃ£¬ÔÚ³ÌÐòÖÐÎÒÓÃint_curpageÀ´±êʶ£¬Õâ¸öµÄ»°·ÅÔÚÀàµÄ´´½¨¹ý³ÌÖлñµÃÔÚºÃҲûÓÐÁË
Private Sub Class_Initialize
'========================
'É趨һЩ²ÎÊýµÄüaÈÏÖµ
'========================
XD_PageSize=10 'É趨·ÖÒ³µÄĬÈÏֵΪ10
'========================
'»ñÈ¡µ±Ç°ÃæµÄÖµ
'========================
If request("page")="" Then
int_curpage=1
ElseIf not(IsNumeric(request("page"))) Then
int_curpage=1
ElseIf CInt(Trim(request("page")))<1 Then
int_curpage=1
Else
Int_curpage=CInt(Trim(request("page")))
End If
End Sub
µ½ÕâÀïÕâ¸öÀà·ÖµÄ¹¦ÄÜ»ù±¾ÒѾʵÏÖÁË£¬Ö»ÒªÔÚµ÷ÓÃÕâ¸öÀàµÄÒ³ÃæµÄURLºóÃæ¼ÓÉÏpage=n£¬Ëü¾Í»áÏÔʾµÚnÒ³µÄÄÚÈÝÁË£¬ËùÒÔ½ÓÏÂÈ¥Òª×öµÄ¾ÍÊÇ´´½¨Ò»¸öÊý¾Ýµ¼º½ÌõÁË£¬ÎÒ°ÑËüÉè¼ÆÎªÀàËÆÒÔÃæµÄÐÎʽ
9 3[1] [2] [3] [4] [5] [6] [7] [8] 4 :Ò³´Î:1/8Ò³ ¹²51Ìõ¼Ç¼ 7Ìõ/ÿҳ
ÔÚÒ³ÃæÀïͨ¹ýµ÷ÓÃShowPage()µÄ·½·¨ÏÔʾ³öÀ´£¬ShowPage¿ÉÒÔÔÚGetRSÒÔºóµÄÈÎÒâλÖõ÷Óã¬Ò²¿ÉÒÔµ÷Óöà´Î
Public Sub ShowPage()
Dim str_tmp
int_totalRecord=XD_RS.RecordCount
If int_totalRecord<=0 Then
str_error=str_error & "×ܼǼÊýΪÁ㣬ÇëÊäÈëÊý¾Ý"
Call ShowError()
End If
If int_totalRecord int_TotalPage=1 Else If int_totalRecord mod PageSize =0 Then int_TotalPage = CLng(int_TotalRecord / XD_PageSize * -1)*-1 Else int_TotalPage = CLng(int_TotalRecord / XD_PageSize * -1)*-1+1 End If End If If Int_curpage>int_Totalpage Then int_curpage=int_TotalPage End If '===================================================== 'ÏÔʾ·ÖÒ³ÐÅÏ¢£¬¸÷¸öÄ£¿é¸ù¾Ý×Ô¼ºÒªÇó¸ü¸ÄÏÔÇóλÖà '===================================================== response.write " str_tmp=ShowFirstPrv ¡®ÏÔʾÊ×Ò³¡¢Ç°Ò»Ò³ response.write str_tmp str_tmp=showNumBtn ¡®Êý×Öµ¼º½ response.write str_tmp str_tmp=ShowNextLast ¡®ÏÂÒ»Ò³¡¢Ä©Ò³ response.write str_tmp str_tmp=ShowPageInfo response.write str_tmp response.write "
"
End Sub
µ½ÕâÀïÀàµÄ¹¦ÄܲÅËãÍêÕû£¨ÎªÁ˽ÚÊ¡°æÃ棬ÎÒÓÐЩ·½·¨Ã»ÓзÅÉÏÈ¥£¬ÔÙÏÂÃæ¸½ÉÏÈ«²¿ÍêÕû´úÂ룩дһ¸ö¼òµ¥Ò³Ãæ²âÊÔÒ»ÏÂ
¡¯°Ñ·ÖÒ³Àà°üº¬½øÀ´
<%
Set mypage=new xdownpage
mypage.getconn=conn
mypage.getsql="select * from productinfo order by id asc"
mypage.pagesize=7
set rs=mypage.getrs() ¡®µÃµ½Recordset
mypage.showpage() ¡®ÏÔʾ·ÖÒ³µ¼º½Ìõ
for i=1 to mypage.pagesize ¡®ÏÂÃæµÄʹÓþͺÍʹÓÃÒ»°ãµÄrecordsetûÓÐʲôÁ½ÑùÁË
if not rs.eof then ¡®ÓÃÀ´ÅжÏÊÇ·ñµ½´ï×îºóÒ»ÌõµÄ£¬Ò»¶¨Òª¼Ó£¬²»È»×îºóÒ»Ò³·Ö³öÎÊÌâ
response.write rs("key") & "
" ¡®ÔÚÕâÀï¾Í¿ÉÒÔ°´×Ô¼ºµÄÒâ˼ÏÔʾ´úÂëÁË£¬
rs.movenext
else
exit for
end if
next
Ч¹û»¹²»´í,¸ÃÓеÄÈ«ÓÐÁË¡£
·ÖÒ³¹ý³ÌÖУ¬»¹ÓÐÒ»¸ö±ÈÈíÂé·³µÄÎÊÌâÊÇ£¬ÔÚ´ø¶à¸ö²ÎÊýµÄURLÖУ¬Èç±£Ö¤ÔÚÒ³Ãæ×ªÏòµÄʱºò²»µôʧÆäËü²ÎÊý¡£ÎÒ¿¿Ò»¸öGetURLµÄ¹ý³ÌÀ´ÊµÏÖ£¬²¢ÔÚÉú³Éµ¼º½Ê±µ÷Óá£
Private Function GetURL()
Dim strurl,str_url,i,j,search_str,result_url
search_str="page="
strurl=Request.ServerVariables("URL")
Strurl=split(strurl,"/")
i=UBound(strurl,1)
str_url=strurl(i)'µÃµ½µ±Ç°Ò³ÎļþÃû
str_params=Request.ServerVariables("QUERY_STRING")
If str_params="" Then
result_url=str_url & "?page="
Else
If InstrRev(str_params,search_str)=0 Then
result_url=str_url & "?" & str_params &"&page="
Else
j=InstrRev(str_params,search_str)-2
If j=-1 Then
result_url=str_url & "?page="
Else
str_params=Left(str_params,j)
result_url=str_url & "?" & str_params &"&page="
End If
End If
End If
GetURL=result_url
End Function
ͨ¹ýGetURLµÄ´¦Àí£¬¿ÉÒÔ×Ô¶¯µÄ»ñÈ¡µ±Ç°ÃæµÄÎļþÃû£¬ºÍËùÓдøµÄ²ÎÊý£¬ÊµÏÖÁËÒ³Ãæ×ª»»Ò³²»¶ªÊ§²ÎÊý¡£
Èý¡¢ ºó¼Ç
ͨ¹ýÕâ¸ö·ÖÒ³À࣬½â¾öÁËÿ´Î·ÖҳʱÐèÒªÖØ¸´Ð´µÄ·ÖÒ³²¿·Ö´úÂ룬·½±ãÁ˱à³Ì£¬Ò²Ê¹µÄÌá¸ßÁËÖ÷Òª´úÂëµÄ¿É¶ÁÐÔ¡£Ò²Ï£ÍûÄܸø´ó¼ÒÔÚ±à³Ì¹ý³ÌÖдøÀ´Ò»µã·½±ã£¬ÓÉÓÚ±¾ÈËˮƽÓÐÏÞ,³ÌÐòºÍÎÄÕÂÖÐÄÑÃâÓÐ´í£¬»¹Íû´ó¼ÒÅúÆÀÖ¸Õý¡£
´úÂëÏÂÔØ: http://www.513soft.net:83/net/Page.rar

