当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp下tag的实现,简单介绍与部分代码

ASP
Access 2000 数据库 80 万记录通用快速分页类
Microsoft JET Database Engine 错误 ''80004005'' 未指定的错误的完美解决方法
收藏的ASP常用的函数集
asp分页的一个类
ASP开发网页牢记注意事项
ASP下操作Excel技术总结分析
ASP数据岛操作类
ASP经典分页类
asp论坛在线人数统计研究
ASP调用SQL SERVER存储程序
asp输出bmp
ASP连接数据库的全能代码
ASP面向对象编程探讨及比较
web文件管理器的后续开发
一小偷类!!有兴趣的可以看看
利用ASP实现事务处理的方法
大数量查询分页显示 微软的解决办法
如何把ASP编写成DLL
asp实现树型结构
超级ASP大分页_我的类容我做主

ASP 中的 asp下tag的实现,简单介绍与部分代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 36 ::
收藏到网摘: n/a

标签(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