java asp tag_ASP_asp下tag的实现,简单介绍与部分代码,标签(Tag)是什么? 标签是一 - phpStudy...

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

标签(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,"",ID)

s=Replace(s,"",HtmlName)

s=Replace(s,"",HtmlIntro)

s=Replace(s,"",Count)

s=Replace(s,"",HtmlUrl)

s=Replace(s,"",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相关阅读:

Windows Server 2008之可移动存储访问组策略设置

可以文本显示的公告栏的js代码

Linux操作系统上摄像头的使用小技巧

FreeBSD FTP 的架设教程

3个比较有用的网页制作技巧

用vbs实现获取电脑硬件信息的脚本_最新版

windows文件夹管理list视图方式

使用函数自动生成n层目录

如何快速找到CSS的BUG

Ctrl + Enter提交前检测的代码

(二)字的艺术

VBS教程:VBScript 语句-With 语句

ExtJS4 组件化编程,动态加载,面向对象,Direct

js怎样实现下拉框改变,它旁边的图像也改变

首先需要定义一个树结构的节点类,包含节点值和子节点列表: ```java class TreeNode { int val; List<TreeNode> children; public TreeNode(int val) { this.val = val; children = new ArrayList<>(); } } ``` 然后可以实现树的遍历方法,比如先序遍历: ```java public void preOrder(TreeNode root) { if (root == null) { return; } System.out.print(root.val + " "); for (TreeNode child : root.children) { preOrder(child); } } ``` 统计树中节点总数可以使用递归方式,每个节点的子节点数目即为它的贡献,加上1就是以它为根的子树的总节点数: ```java public int countNodes(TreeNode root) { if (root == null) { return 0; } int count = 1; for (TreeNode child : root.children) { count += countNodes(child); } return count; } ``` 最后可以通过一个示例来测试: ```java public static void main(String[] args) { TreeNode root = new TreeNode(1); TreeNode node2 = new TreeNode(2); TreeNode node3 = new TreeNode(3); TreeNode node4 = new TreeNode(4); TreeNode node5 = new TreeNode(5); TreeNode node6 = new TreeNode(6); TreeNode node7 = new TreeNode(7); root.children.add(node2); root.children.add(node3); root.children.add(node4); node2.children.add(node5); node2.children.add(node6); node4.children.add(node7); System.out.print("Pre-order traversal: "); preOrder(root); System.out.println(); System.out.println("Total number of nodes: " + countNodes(root)); } ``` 输出结果: ``` Pre-order traversal: 1 2 5 6 3 4 7 Total number of nodes: 7 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值