⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 marker.asp

📁 WAP手机网页XXXXX WAP手机网页XXXXX
💻 ASP
字号:
<%
Class ImplMocomWAPmoWAPMarker
Private strHandle
Private blnError
Private strError
Private strURL

Private Sub Class_Initialize()
    Set MyXML = MyKernel.XMLParser
    blnError = True
End Sub

Private Sub Class_Terminate()
End Sub

Public Sub main()
    strHandle = Request.QueryString("Handle")
    strURL = Request.QueryString("URL")
    MyXML.Align = "center"
    MyXML.Println MyKernel.Config("MarkerTitle")
    MyXML.Align = "left"
    If MyKernel.Config("IsMarker") <> "1" Then
        MyXML.Println "该功能已被站长关闭"
    ElseIf IsGuest() Then
        Call RegisterHint("只有注册用户才能使用书签功能")
    ElseIf Request.ServerVariables("REQUEST_METHOD") = "POST" Then
        Call doPost
    Else
        Call doGet
    End If
    If strURL <> "" Then
        MyXML.Println CreateA(strURL, "快速返回", getImagePrefix("back.gif"))
    End If
    If strHandle <> "" And MyKernel.Config("IsMarker") = "1" Then
        MyXML.Println CreateA("marker.asp", MyKernel.Config("MarkerTitle"), getImagePrefix("back.gif"))
    End If
    MyXML.Println CreateA("console.asp", "返回控制台", getImagePrefix("back.gif"))
    Call BackHome
    Call setLog("marker", 0)
    MyXML.Transform Response
End Sub

Private Sub doGet()
    Select Case LCase(strHandle)
    Case "add"
        Call doGetAdd
    Case "delete"
        Call doGetDelete
    Case Else
        Call doGetMain
    End Select
End Sub

Private Sub doGetMain()
    Dim clsPage
    Dim rs
    Dim i
    Set clsPage = MyKernel.Page()
    clsPage.PageNum = MyIO.QueryString("Page")
    clsPage.PageSize = 20
    clsPage.DataType = WM_DataType
    clsPage.Increment = "SeqId"
    clsPage.Table = T_MARKER
    clsPage.Where = "UserId=" & MyKernel.Memory("UserId")
    clsPage.Sort = "SeqId DESC"
    clsPage.SortType = True
    Set rs = clsPage.Execute()
    If clsPage.TotalRow > 0 Then
        Dim objMarker
        Set objMarker = MyKernel.Table(T_MARKER)
        i = 0
        Do While rs.EOF = False And i < clsPage.PageSize
            objMarker.Source = rs
            MyXML.Printf CreateA(objMarker("Content"), ((clsPage.PageNum - 1) * clsPage.PageSize + i + 1) & "." & objMarker("Title"), "")
            MyXML.Printf "["
            MyXML.Printf CreateA("marker.asp?Handle=Delete&SeqId=" & objMarker("SeqId"), "删除", "")
            MyXML.Println "]"
            rs.MoveNext
            i = i + 1
        Loop
        Set objMarker = Nothing
        If clsPage.PageNum < clsPage.TotalPage Then
            MyXML.Printf CreateA("marker.asp?Page=" & (clsPage.PageNum + 1), "下一页", "")
            MyXML.Printf "|"
            MyXML.Println CreateA("marker.asp?Page=" & (clsPage.TotalPage), "最末页", "")
        End If
        If clsPage.PageNum > 1 Then
            MyXML.Printf CreateA("marker.asp?Page=" & (clsPage.PageNum - 1), "上一页", "")
            MyXML.Printf "|"
            MyXML.Println CreateA("marker.asp", "第一页", "")
        End If
        If clsPage.TotalPage > 2 Then
            MyXML.SetF "marker.asp", "get", "", True
            Call setQuery
            MyXML.SetN "Page", "text", "", clsPage.PageNum & "/" & clsPage.TotalPage & "页>>跳到", "页", False, 5, 5, "N*"
            MyXML.SetN "", "submit", "GO", "", "", True
        End If
    Else
        MyXML.Println "您尚未添加书签"
    End If
    If Not rs Is Nothing Then rs.Close
    Set rs = Nothing
    Set clsPage = Nothing
    MyXML.Println CreateA("marker.asp?Handle=Add", "新建书签", "")
End Sub

Private Sub doGetAdd()
    MyXML.Println "[添加书签]"
    MyXML.SetF getURL("marker.asp?Handle=Add", "URL", strURL), "post", "", True
    MyXML.SetN "Title", "text", "", "书签标题:", " 中英文或数字,不能超过200个字节(即100个汉字)", True
    If strURL = "" Then
        MyXML.SetN "Content", "text", "http://", "连接地址:", " 站外连接必须带http://前缀", True
    End If
    MyXML.SetN "", "submit", "确定", "", "", True
End Sub

Private Sub doGetDelete()
    Dim strAccept
    Dim objMarker
    Dim lngId
    Dim strSQL
    Set objMarker = MyKernel.Table(T_MARKER)
    strAccept = Request.QueryString("Accept")
    lngId = atol(Request.QueryString("SeqId"))
    strSQL = "USERID=$(UserId) AND SEQID=$(SeqId)"
    strSQL = Replace(strSQL, "$(UserId)", MyKernel.Memory("UserId"))
    strSQL = Replace(strSQL, "$(SeqId)", lngId)
    If lngId <= 0 Then
        MyXML.Println "请选择您要删除的书签"
    ElseIf Not objMarker.Execute("*", strSQL) Then
        MyXML.Println "找不到您要删除的书签"
    ElseIf strAccept = "YES" Then
        MyXML.Println "书签[" & objMarker("Title") & "]已成功删除"
        strSQL = "DELETE FROM $(Table) WHERE SEQID=$(SeqId)"
        strSQL = Replace(strSQL, "$(Table)", T_MARKER)
        strSQL = Replace(strSQL, "$(SeqId)", objMarker("SeqId"))
        MyKernel.DB.Exec strSQL
        MyKernel.Memory("MarkerTotal") = atoi(MyKernel.Memory("MarkerTotal")) - 1
        If atoi(MyKernel.Memory("MarkerTotal")) < 0 Then
            MyKernel.Memory("MarkerTotal") = 0
        End If
        strSQL = "UPDATE $(Table) SET MARKERTOTAL=$(MarkerTotal) WHERE SEQID=$(SeqId)"
        strSQL = Replace(strSQL, "$(Table)", T_USER)
        strSQL = Replace(strSQL, "$(MarkerTotal)", MyKernel.Memory("MarkerTotal"))
        strSQL = Replace(strSQL, "$(SeqId)", MyKernel.Memory("SeqId"))
        MyKernel.DB.Exec strSQL
    Else
        MyXML.Println "您确定要删除书签[" & objMarker("Title") & "]么?"
        MyXML.Println CreateA("marker.asp?Handle=Delete&SeqId=" & objMarker("SeqId") & "&Accept=YES", "确定", "")
    End If
    Set objMarker = Nothing
End Sub

Private Sub doPost()
    Select Case LCase(strHandle)
    Case "add"
        Call doPostAdd
    Case Else
    End Select
End Sub

Private Sub doPostAdd()
    If MyIO.Parse(KBYTE) <> 0 Then
        MyXML.Println "超过最大数据请求长度:" & KBYTE
    Else
        Dim strTitle, strContent
        Dim rs, strSQL
        strTitle = Trim(MyIO.Form("Title"))
        strContent = strURL
        If strContent = "" Then
            strContent = MyIO.Form("Content")
        End If
        If strTitle = "" Then
            strError = "请输入书签标题"
        ElseIf strContent = "" Then
            strError = "请输入连接地址"
        ElseIf atoi(MyKernel.Memory("MarkerTotal")) > atoi(MyKernel.Config("MarkerTotal")) Then
            strError = "最多只能添加" & MyKernel.Config("MarkerTotal") & "个书签" & vbCrLf & _
            "您现在已有" & MyKernel.Memory("MarkerTotal") & "个书签了"
        Else
            strSQL = getLimitSQL(1, "*", T_MARKER, "USERID=$(UserId) AND (TITLE='$(Title)' OR CONTENT='$(Content)')", "", "")
            strSQL = Replace(strSQL, "$(UserId)", MyKernel.Memory("UserId"))
            strSQL = Replace(strSQL, "$(Title)", SafeString(strTitle))
            strSQL = Replace(strSQL, "$(Content)", SafeString(strContent))
            Set rs = MyKernel.DB.Query(strSQL, adOpenKeyset, adLockOptimistic, adCmdText)
            If Not rs.EOF Then
                strError = "该书签已经添加过了"
            Else
                blnError = False
                strError = "书签添加成功"
                rs.AddNew
                rs("UserId") = MyKernel.Memory("UserId")
                rs("UserName") = MyKernel.Memory("Nick")
                rs("Title") = strTitle
                rs("Content") = strContent
                rs("Intime") = getTime(Now())
                rs("Outime") = 0
                rs.Update
                strSQL = "UPDATE $(Table) SET MARKERTOTAL=MARKERTOTAL+1 WHERE SEQID=$(SeqId)"
                strSQL = Replace(strSQL, "$(Table)", T_USER)
                strSQL = Replace(strSQL, "$(SeqId)", MyKernel.Memory("SeqId"))
                MyKernel.DB.Exec strSQL
                MyKernel.Memory("MarkerTotal") = atoi(MyKernel.Memory("MarkerTotal")) + 1
            End If
            rs.Close
            Set rs = Nothing
        End If
    End If
    MyXML.Println strError
    If blnError Then
        Call doGetAdd
    End If
End Sub

Public Function newInstance()
    Set newInstance = New ImplMocomWAPmoWAPMarker
End Function
End Class
%>

⌨️ 快捷键说明

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