search.aspx.vb

来自「是可以运行的电子光盘 有程序与PPT介绍 对于学习VB。NET的有参考意义」· VB 代码 · 共 110 行

VB
110
字号
Imports System.Data
Imports System.data.OleDb
Imports System.Configuration.ConfigurationManager
Partial Class WebDisk_Message_Search
    Inherits System.Web.UI.Page
    '最大页数
    Protected MaxPage As Integer
    '最大行数
    Protected RowSum As Integer
    '当前页数
    Protected CurPage As Integer
    '每页显示数量
    Protected PageSz As Integer

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        PanMain.Visible = "false"
    End Sub

    '管理员回复
    Function AdminRel(ByVal relmessage)
        If Not relmessage Is dbnull.value Then
            AdminRel = relmessage
        Else
            Return Nothing
        End If
    End Function

    Protected Sub ImgSearch_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ImgSearch.Click
        Dim i, j As Integer
        j = 0
        For i = 1 To Len(txtSearch.Text)
            If Mid(txtSearch.Text, i, 2) = "||" Then
                j = 1
            End If
        Next
        If txtSearch.Text <> "" And txtSearch.Text <> "|" And j <> 1 Then
            Dim strconn, strsql As String
            Dim myconn As OleDbConnection
            Dim mydataAdapter As OleDbDataAdapter
            Dim DS As DataSet
            Dim mydataview As DataView
            '设置数据库连接
            strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(AppSettings("databasepath"))
            myconn = New OleDbConnection(strconn)
            '按输入内容查找
            Dim Search As String
            ' Dim newubb As ubbcode = New ubbcode
            Search = Server.HtmlEncode(Replace(txtSearch.Text, "|", "%"))
            strsql = "select id,UserName,Title from Message where " & ddlSearch.SelectedItem.Value & " like '%" & Search & "%' order by id desc"
            mydataAdapter = New OleDbDataAdapter(strsql, myconn)
            DS = New DataSet()
            mydataAdapter.Fill(DS, "Message")
            mydataview = New DataView(DS.Tables("Message"))
            DS = New DataSet()
            Try
                mydataAdapter.Fill(DS)
                '获取总共有多少行
                RowSum = DS.Tables(0).Rows.Count
            Catch
                RowSum = 0
            End Try
            Dim PageDS As PagedDataSource = New PagedDataSource
            PageDS.DataSource = DS.Tables(0).DefaultView
            PageDS.AllowPaging = True
            '设置每页显示条数,可以修改。
            PageDS.PageSize = 20
            PageSz = PageDS.PageSize
            '没有指定页数时默认为第一页
            If Not Request.QueryString("Page") Is Nothing Then
                CurPage = Convert.ToInt32(Request.QueryString("Page"))
            Else
                CurPage = 1
            End If
            '计算出浏览数据的总页数
            If RowSum Mod PageSz > 0 Then
                '有余数要加1
                MaxPage = RowSum \ PageSz + 1
            Else
                '正好除尽
                MaxPage = RowSum \ PageSz
            End If
            '设置翻页
            PageDS.CurrentPageIndex = CurPage - 1
            lblCurrentPage.Text = "共查找到留言 " & RowSum & " 条,分 " & MaxPage & " 页," & "当前为第 " & CurPage & " 页," & "每页 " & PageSz & " 条"
            If Not PageDS.IsFirstPage Then
                lnkfirst.NavigateUrl = Request.CurrentExecutionFilePath & "?Page=1"
                lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath & "?Page=" & (CurPage - 1)
            End If
            If Not PageDS.IsLastPage Then
                lnkNext.NavigateUrl = Request.CurrentExecutionFilePath & "?Page=" & (CurPage + 1)
                lnklast.NavigateUrl = Request.CurrentExecutionFilePath & "?Page=" & MaxPage
            End If
            '数字链接
            lblNumber.Text = ""
            For i = CurPage - 5 To CurPage + 5
                If CurPage = i Then
                    lblNumber.Text &= "<font color=#FF0000><strong>" & CurPage & "</strong></font>&nbsp;"
                ElseIf i <= MaxPage And i >= 1 Then
                    lblNumber.Text &= "<a href='" & Request.CurrentExecutionFilePath & "?Page=" & i & "'>" & i & "</a>&nbsp;"
                End If
            Next
            '绑定数据
            DlMain.DataSource = mydataview
            DlMain.DataBind()
            PanMain.Visible = "true"
        End If
    End Sub
End Class

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?