【www.gdgbn.com--php函数】

经典asp分页程序代码
<%

Class Cls_Page

 "**************************************************
 "函数名:ShowPage
 "作  用:显示分页
 "参  数:如下
 "strFileName : ?后面的文件,如xxx.asp?page=
 "xTotalNum  : 总数
 "xPageCount     : 总页数
    "xMaxPerPage : 每页显示数量
 "xCurrentPage : 当前页数
 "xPageName  : 当前页面名
 "xUnitName  : 分类单位名称,如"篇,条,幅"
 "xShowStyle  : 显示分页的样式
 "返回值:分页
 "**************************************************
 Public Function ShowPage(strFileName,xTotalNum,xPageCount,xMaxPerPage,xCurrentPage,xPageName,xUnitName,xShowStyle)
  strUrl = ClsMain.JoinChar(strFileName)
  Dim i,PageStr
  If xTotalNum > 0 Then
   If xPageCount >= 1 Then
    Select Case xShowStyle
     Case "1" "分页样式1:列出所有页码的页号,页码较少时可以使用
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      For i=1 To xPageCount
       If i = xCurrentPage Then
        PageStr = PageStr & " [" & i & "]"
       Else
        PageStr = PageStr & " [" & i & "]"
       End If
      Next
      PageStr = PageStr & ""&vbcrlf
     Case "2" "分页样式2:显示首页、上一页、下一页、末页,均为符号和转到页的输入框
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      If xCurrentPage > 1 Then
       PageStr = PageStr & " |‹"
       PageStr = PageStr & " «"
      Else
       PageStr = PageStr & " |‹"
       PageStr = PageStr & " «"
      End If
      If xCurrentPage < xPageCount Then
       PageStr = PageStr & " »"
       PageStr = PageStr & " ›|"&vbcrlf
      Else
       PageStr = PageStr & " »"
       PageStr = PageStr & " ›|"&vbcrlf
      End If
      PageStr = PageStr & "  "&vbcrlf
      PageStr = PageStr & "  "&vbcrlf
      PageStr = PageStr & ""&vbcrlf
     Case "3" "分页样式3:显示首页、上十页、下十页、尾页以及中间一段页码
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      p = (xCurrentPage - 1) 10
      If xCurrentPage = 1 Then
       PageStr = PageStr & " |‹"
      Else
       PageStr = PageStr & " |‹"
      End If
      If p * 10 > 0 Then
       PageStr = PageStr & " «"
      End If
      For i=(p * 10 + 1) To (p * 10 + 10)
       If i = xCurrentPage Then
        PageStr = PageStr & " [" & i & "]"
       Else
        PageStr = PageStr & " " & i & ""
       End If
       If i = xPageCount Then Exit For
      Next
      If i < xPageCount Then PageStr = PageStr & " »"
      If xCurrentPage = xPageCount Then
       PageStr = PageStr & " ›|"
      Else
       PageStr = PageStr & " ›|"
      End If
      PageStr = PageStr & ""&vbcrlf
     Case "4" "分页样式4:显示首页和尾页的页码、中间显示一部分页码
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      If xCurrentPage > 4 Then PageStr = PageStr & " [1] ... "
      If xCurrentPage < PageCount - 3 Then PageTo = xCurrentPage + 3 Else PageTo = xPageCount
      For i=xCurrentPage - 3 To PageTo
       If i >= 1 Then
        If i = xCurrentPage Then
         PageStr = PageStr & "  [" & i & "]"
        Else
         PageStr = PageStr & " [" & i & "]"
        End If
       End If
      Next
      If xCurrentPage < xPageCount - 3 Then PageStr = PageStr & " ... " & xPageCount & ""
      PageStr = PageStr & ""&vbcrlf
     Case "5" "分页样式5:显示首页、上一页、下一页、末页,均为汉字和转到页的选择列表
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      If xCurrentPage > 1 Then
       PageStr = PageStr & " 首页"
       PageStr = PageStr & " 上一页"
      Else
       PageStr = PageStr & " 首页"
       PageStr = PageStr & " 上一页"
      End If
      If xCurrentPage < xPageCount Then
       PageStr = PageStr & " 下一页"
       PageStr = PageStr & " 末页"&vbcrlf
      Else
       PageStr = PageStr & " 下一页"
       PageStr = PageStr & " 末页"
      End If
      PageStr = PageStr & "  " & xUnitName & "/页"&vbcrlf
      PageStr = PageStr & " 转到:"&vbcrlf
      PageStr = PageStr & ""&vbcrlf
     Case "6" "分页样式5:显示首页、上一页、下一页、末页,数字页和转向文本框
      PageStr = PageStr & ""
      PageStr = PageStr & "全部"&xPageName&":" & xTotalNum &"" & xUnitName & ""
      PageStr = PageStr & " 页次:" & xCurrentPage & "/" & xPageCount & ""
      PageStr = PageStr & " "&xMaxPerPage&xUnitName&"/页"
      p = (xCurrentPage - 1) 10
      If xCurrentPage = 1 Then
       PageStr = PageStr & " |‹"
      Else
       PageStr = PageStr & " |‹"
      End If
      If p * 10 > 0 Then
       PageStr = PageStr & " «"
      End If
      For i=(p * 10 + 1) To (p * 10 + 10)
       If i = xCurrentPage Then
        PageStr = PageStr & " [" & i & "]"
       Else
        PageStr = PageStr & " [" & i & "]"
       End If
       If i = xPageCount Then Exit For
      Next
      If i < xPageCount Then PageStr = PageStr & " »"
      If xCurrentPage = xPageCount Then
       PageStr = PageStr & " ›|"&vbcrlf
      Else
       PageStr = PageStr & " [›|]"&vbcrlf
      End If
      PageStr = PageStr & " 转到:页"&vbcrlf

      PageStr = PageStr & ""&vbcrlf

    End Select
   End If
  Else
   PageStr = " "&vbcrlf
  End If
  ShowPage = PageStr
 End Function

 
End Class
%>

本文来源:http://www.gdgbn.com/jiaocheng/22208/