当前位置:96看吧 > 技术文档 > ASP编程 > asp分页函数源代码

asp分页函数源代码

时间:2010/04/20
作者:佚名
来源:网络转载
查看:
标签:asp函数

分页程序

'定义分页全局变量
dim code,mdbsql,Page_size,Totalrec,TotalPage,currentPage

'参数处理,并把相应代码插入code(分页)和mdbsql(数据库查询)中
Sub s_keyword(s_value)
keyword = s_value '建议先对keyword进行处理
if keyword<>"" then
code = code &"&keyword="& keyword
text=Split(keyword) '分词
for each word in text
mdbsql = mdbsql &" and charindex('"&trim(word)&"',hw_area)>0"
next
end if
end Sub

'sql搜索主程序,页次,查找字段,关键字段(唯一索引),排序字段
Sub fSql(s_page,s_table,s_str,s_key,s_order,mdbconn)
if s_page <> "" and IsNumeric(s_page) then currentPage = cint(s_page) else currentPage=1
if mdbsql = "" then mdbsql = "1=1"

Totalrec = mdbconn.execute("select count(*) from ["&s_table&"] where "&mdbsql)(0)
if Totalrec > 0 then
TotalPage = Totalrec\Page_size
If (Totalrec Mod Page_size) Then TotalPage = TotalPage+1
If TotalPage < 1 Then TotalPage = 1
If currentPage > TotalPage Then currentPage = TotalPage
If TotalPage = 1 then Page_size=Totalrec

if currentPage = 1 then
mdbsql = "select top "&Page_size&" "&s_str&" from ["&s_table&"] where "&mdbsql&" order by "&s_order&" desc"
else if s_order <> "" and s_order <> s_key then
mdbsql = "select top "&Page_size&" "&s_str&" from ["&s_table&"] where "&mdbsql&" and "&s_key&" not in (select top "&(currentPage-1)*Page_size&" "&s_key&" from ["&s_table&"] where "&mdbsql&" order by "&s_order&" desc) order by "&s_order&" desc"
else
mdbsql = "select top "&Page_size&" "&s_str&" from ["&s_table&"] where "&mdbsql&" and "&s_key&" < (select min ("&s_key&") from (select top "&(currentPage-1)*Page_size&" info_id from ["&s_table&"] where "&mdbsql&" order by "&s_key&" desc) as T) order by "&s_key&" desc"
end if
end if
end Sub


'分页显示
Function show_page()
temp_page = ""
If currentPage <> 1 Then temp_page = temp_page & "<a href='?page=1"&code&"' title='第一页'><<-</a>" Else temp_page = temp_page & "<<-"
temp_page = temp_page & "&nbsp;"
If currentPage > 1 Then temp_page = temp_page & "<a href='?page=" & currentPage - 1 &code&"&' title='前一页'><-</a>" Else temp_page = temp_page & "<-"
temp_page = temp_page & "&nbsp;"

PageStart = currentPage - 5
If PageStart < 1 Then PageStart = 1
PageEnd = PageStart + 10
If PageEnd > TotalPage Then PageEnd = TotalPage
For Temp = PageStart To PageEnd
If Temp = currentPage Then temp_page = temp_page & "[" & Temp & "]&nbsp;" Else temp_page = temp_page & "<a href='?page="&Temp&""&code&"' title='第"&Temp&"页'>"&Temp&"</a>&nbsp;"
Next

If currentPage < TotalPage Then temp_page = temp_page & "<a href='?page=" &currentPage + 1 & ""&code&"' title='下一页'>-></a>" Else temp_page = temp_page & "->"
temp_page = temp_page & "&nbsp;"
If currentPage < TotalPage Then temp_page = temp_page & "<a href='?page=" & TotalPage &code&"' title='最后一页'>->></a>" Else temp_page = temp_page & "->>"

temp_page = temp_page & "&nbsp;&nbsp;共 "&Totalrec&" 条记录,当前第 "&currentPage&" 页,共 "&TotalPage&" 页&nbsp;"

temp_page = temp_page & "&nbsp;&nbsp;到第<input name='gopage' id='gopage' type='text' size='3' maxlength='6' value='"&currentPage&"' />页 <input type='button' value='go' onclick=""location.href='?page='+gopage.value+'"&code&"'"" />"

show_page = temp_page & ""
end Function
'以上程序放到一个function中

使用前定义好变量

'定义参数全局变量
dim keyword

Page_size = 20
mdbsql="flag = 1" '可以先定义固定的搜索条件

'函数会根据参数自动调整code和mdbsql
Call s_keyword(trim(Request("keyword")))
Call s_sql(trim(Request("page")),"title","id","id")
'以上代码一般放在程序开头

使用

'内容显示
if Totalrec > 0 then
set rs=server.createobject("adodb.recordset")
rs.open mdbsql,toconn,1,1
If rs.bof and rs.Eof Then
response.Write("暂时没有信息")
else
For Temp_FN = 1 to Page_size
If rs.Eof Then Exit For
response.write rs("title")
rs.movenext
next
response.write show_page() '分页显示
end if
else
response.Write("暂时没有信息")
end if

上一篇:简单的ASP分页程序
下一篇:asp函数中文数字验证码
页面举报
Report
关闭页面
Close
收藏页面
Favorites
分享页面
Share
版权信息:栏目内,站内会员所分享的全部“资源/素材/文章”,仅供学习与参考,版权为原作者所有。
下载提示:非注册用户每天可下载一个文件,已注册会员不受限制。
网友评论
数据载入中
验证码
  • 请您注意:
  • ·请不要在评论中含与内容无关的广告链接。
  • ·不良评论请用报告管理员,以利管理员及时删除。
  • ·遵守中华人民共和国的各项有关法律法规
  • ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • ·本站管理人员有权保留或删除评论中的任意内容
  • ·您在本站发表的作品,本站有权在网站内转载或引用
  • ·参与本评论即表明您已经阅读并接受上述条款
相关最新
相关热门