如何使用ASP实现网站的“目录树”管理


 
 
使用ASP实现网站的目录树

数据库结构(共使用了两个表)
1。tblCategory
字段名  类型  
Root   binary   说明树关或开(目录的根)
ID     自动编号 关键字
Sort   integer  识别该字段内容的整数(如果root是开状态sort为0)表示显示的目录的顺序
Name   text(255)可以包含html中的标识符
HREF   text(255) 允许空

2。tblPages
ID   自动编号
Sort  integer 关键字
Name  text(255)
HREF  text(255)

3.default.htm
<html>
<head>
<title>JavaScript Tree Control Template</title>
</head>
<frameset cols=""210,*"">
?<frame src=""tree.asp"" name=""TOC"">
?<frame src=""main.htm"" name=""basefrm"">
</frameset>
</html>

4.main.htm
<head><title></title></head>
<body>
<h2>Start Page</h2>
</body>
</html>

5.tree.asp
Set conn = Server.CreateObject(""ADODB.Connection"")
Set Rs = Server.CreateObject(""ADODB.Recordset"")
conn.open ""DRIVER=Microsoft Access Driver (*.mdb);DBQ="" & Server.MapPath(""toc.mdb"")

strsql = ""SELECT tblCategory.Root, tblCategory.[ID], tblCategory.Sort AS CatSort, tblPages.sort AS LinkSort, tblCategory.[Name] AS CatName, tblCategory.HREF AS CatURL, tblPages.[Name] AS LinkName, tblPages.href AS LinkURL FROM tblCategory LEFT JOIN tblPages ON tblCategory.[ID] = tblPages.[ID] ORDER BY tblCategory.root ASC, tblCategory.Sort, tblPages.sort""

rs.open strsql, conn, 2, 2

if not rs.eof then rs.movefirst
currentID = """" %>
<html>
<head>
<link rel=""stylesheet"" href=""ftie4style.css"">
<!-- Infrastructure code for the tree -->
<script src=""ftiens4.js""></script>
<!-- Execution of the code that actually builds the specific tree -->
<script>
USETEXTLINKS = 1
<%
    Do While Not Rs.EOF
       If Rs(""Root"") = True Then %>
            foldersTree = gFld(""<%= Rs(""CatName"") %>"", ""<%= Rs(""CatURL"") %>"")
    <% Else %>
            aux1 = insFld(foldersTree, gFld(""<%= Rs(""CatName"") %>"", ""<%= Rs(""CatURL"") %>""))
    <% currentID = Rs(""ID"")
            savedID = Rs(""ID"")
            Do While currentID = savedID and not rs.eof
                if Rs(""LinkName"") <> """" Then %>
                    insDoc(aux1, gLnk(0, ""<%= Rs(""LinkName"") %>"", ""<%= Rs(""LinkURL"") %>""))
                    <%
                end if
                Rs.MoveNext
                if not rs.eof then currentID = Rs(""ID"")
             Loop
         End If
        if currentID = """" then rs.movenext
    Loop %>
</script>
<script>
initializeDocument()
</script>
<base target=""basefrm"">
<title></title>
</head>
<body bgcolor=""white"">
</body>
</html>
 

 

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页