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

來源:互聯網
上載者:User

標籤(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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.