程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> asp下tag的實現,簡單介紹與部分代碼

asp下tag的實現,簡單介紹與部分代碼

編輯:關於ASP編程
標簽(Tag)是什麼?
標簽是一種更為自由、靈活,完全由用戶決定的分類方式,而非傳統的由網站定義的分類。您可以根據自己的理解,對發表的文章、上傳的圖片、音樂、視頻等各種文件添加一個或多個標簽,進行靈活的描述。 
添加標簽(Tag)有什麼作用?
標簽體現了群體的力量,使得用戶之間可以通過相近的內容產生更多的關聯和互動。您在發表日志或上傳文件時添加了Tag ,就可以看到woku.com所有和您使用了相同Tag 的日志和文件。 
標簽頻道中不同大小、粗細的文字代表什麼?
使用不同大小、粗細字體的標簽,代表著標簽不同的使用頻率。字體越大、越粗,說明這些標簽的使用頻率越高。 
  添加標簽時需要注意些什麼?
① 多個標簽之間請用空格分隔。 
② 每個標簽的最大長度為 10 個漢字。 
③ 每篇日志或每個文件最多只能添加10個標簽,這包括您自己以及其他用戶添加的標簽。 
我可以在別人發表的日志和文件中添加標簽嗎?
您可以根據浏覽對象的閱讀權限來判斷是否可以添加標簽。公開的日志或文件,所有用戶都可以添加標簽;僅供好友浏覽的日志,只有好友和作者能添加標簽;僅作者可以浏覽的日志或文件,只有作者能夠添加標簽。當然,無論是誰添加的標簽,都只有該日志或文件的作者可以修改或刪除這些標簽。 
所以呢我找了些實現tag功能的asp代碼,僅供參考
復制代碼 代碼如下:
'*********************************************************
' 目的:    定義TTag類
' 輸入:    無
' 返回:    無
'*********************************************************
Class TTag

    Public ID
    Public Name
    Public Intro
    Public Order
    Public Count


    Public Property Get EncodeName
        EncodeName = Server.URLEncode(Name)
    End Property

    Public Property Get Url
        Url = ZC_BLOG_HOST & "catalog.asp?"& "tags=" & Server.URLEncode(Name)
    End Property

    Public Property Get HtmlUrl
        HtmlUrl=TransferHTML(Url,"[html-format]")
    End Property

    Public Property Get HtmlIntro
        HtmlIntro=TransferHTML(Intro,"[html-format]")
    End Property

    Public Property Get HtmlName
        HtmlName=TransferHTML(Name,"[html-format]")
    End Property

    Public Property Get RssUrl
        RssUrl = ZC_BLOG_HOST & "sydication.asp?tags=" & ID
    End Property

    Public Function Post()

        Call CheckParameter(ID,"int",0)
        Call CheckParameter(Order,"int",0)

        Name=FilterSQL(Name)
        Name=TransferHTML(Name,"[normalname]")
        If Len(Name)=0 Then Post=False:Exit Function

        Intro=FilterSQL(Intro)
        Intro=TransferHTML(Intro,"[html-format]")


        If ID=0 Then
            objConn.Execute("INSERT INTO [blog_Tag]([tag_Name],[tag_Order],[tag_Intro]) VALUES ('"&Name&"',"&Order&",'"&Intro&"')")
        Else
            objConn.Execute("UPDATE [blog_Tag] SET [tag_Name]='"&Name&"',[tag_Order]="&Order&",[tag_Intro]='"&Intro&"' WHERE [tag_ID] =" & ID)
        End If

        Post=True

    End Function


    Public Function LoadInfoByID(tag_ID)

        Call CheckParameter(tag_ID,"int",0)

        Dim objRS
        Set objRS=objConn.Execute("SELECT [tag_ID],[tag_Name],[tag_Intro],[tag_Order],[tag_Count] FROM [blog_Tag] WHERE [tag_ID]=" & tag_ID)

        If (Not objRS.bof) And (Not objRS.eof) Then

            ID=objRS("tag_ID")
            Name=objRS("tag_Name")
            Intro=objRS("tag_Intro")
            Order=objRS("tag_Order")
            Count=objRS("tag_Count")

            LoadInfoByID=True

        End If

        objRS.Close
        Set objRS=Nothing

        If IsNull(Intro) Then Intro=""

    End Function

    Public Function LoadInfoByArray(aryTagInfo)

        If IsArray(aryTagInfo)=True Then
            ID=aryTagInfo(0)
            Name=aryTagInfo(1)
            Intro=aryTagInfo(2)
            Order=aryTagInfo(3)
            Count=aryTagInfo(4)
        End If

        If IsNull(Intro) Then Intro=""

        LoadInfoByArray=True

    End Function


    Public Function Del()

        Call CheckParameter(ID,"int",0)
        If (ID=0) Then Del=False:Exit Function

        Dim s
        Dim i
        Dim objRS

        Set objRS=Server.CreateObject("ADODB.Recordset")
        objRS.CursorType = adOpenKeyset
        objRS.LockType = adLockReadOnly
        objRS.ActiveConnection=objConn
        objRS.Source=""

        objRS.Open("SELECT [log_ID],[log_tag] FROM [blog_Article] WHERE [log_Tag] LIKE '%{" & ID & "}%'")

        If (Not objRS.bof) And (Not objRS.eof) Then
            Do While Not objRS.eof
                i=objRS("log_ID")
                s=objRS("log_tag")
                s=Replace(s,"{"& ID &"}","")
                objConn.Execute("UPDATE [blog_Article] SET [log_tag]='"& s &"' WHERE [log_ID] =" & i)
                objRS.MoveNext
            Loop
        End If
        objRS.Close

        objConn.Execute("DELETE FROM [blog_Tag] WHERE [tag_ID] =" & ID)
        Del=True
    End Function


    Public Function MakeTemplate(s)

        s=Replace(s,"<#article/tag/id#>",ID)
        s=Replace(s,"<#article/tag/name#>",HtmlName)
        s=Replace(s,"<#article/tag/intro#>",HtmlIntro)
        s=Replace(s,"<#article/tag/count#>",Count)
        s=Replace(s,"<#article/tag/url#>",HtmlUrl)
        s=Replace(s,"<#article/tag/encodename#>",EncodeName)

        MakeTemplate=s

    End Function


End Class
'*********************************************************


'*********************************************************
' 目的:    Tags讀取
'*********************************************************
Function GetTags()

    Dim i,j,k,l

    Dim aryAllData
    Dim arySingleData()

    Erase Tags

    Dim objRS

    Set objRS=objConn.Execute("SELECT TOP 1 [tag_ID] FROM [blog_Tag] ORDER BY [tag_ID] DESC")
    If (Not objRS.bof) And (Not objRS.eof) Then
        i=objRS("tag_ID")
        ReDim Tags(i)
    End If

    Set objRS=objConn.Execute("SELECT [tag_ID],[tag_Name],[tag_Intro],[tag_Order],[tag_Count] FROM [blog_Tag] ORDER BY [tag_ID] ASC")
    If (Not objRS.bof) And (Not objRS.eof) Then

        aryAllData=objRS.GetRows(objRS.RecordCount)
        objRS.Close
        Set objRS=Nothing

        k=UBound(aryAllData,1)
        l=UBound(aryAllData,2)
        For i=0 To l
            Set Tags(aryAllData(0,i))=New TTag
            Tags(aryAllData(0,i)).LoadInfoByArray(Array(aryAllData(0,i),aryAllData(1,i),aryAllData(2,i),aryAllData(3,i),aryAllData(4,i)))
        Next

    End If

    GetTags=True

End Function


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved