ASP XML制作菜单管理程序
编程学习 2021-07-05 10:58www.dzhlxh.cn编程入门
利用asp+xml实现代码管理,实际就是利用asp操作xml
以下是menu.asp代码
程序代码
<%
'---------------------------------------
'作者:野 草
'日期:2006年4月24日
'Q Q:94440079
'---------------------------------------
'读取XML文件函数
Function YCMS_menu()
dim menu_temp,m
Set goxml=Server.CreateObject("Microsoft.XMLDOM")
goxml.load(Server.MapPath("menu.xml"))
Set goroot=goxml.documentElement.selectSingleNode("menu")
m=0
For each child in goroot.childNodes
set childmenu=goroot.childnodes.item(m)
Dim menu_open,menu_title,menu_url
menu_open=childmenu.getAttributeNode("open").nodeValue
menu_name=childmenu.getAttributeNode("name").nodeValue
menu_url=goroot.childNodes.item(m).text
'判断是否是弹出窗口
If menu_open=0 Then
'判断是否是第一个,若是第一个则去掉"┊"
If m=0 Then
menu_temp=menu_temp&"<a href='"&menu_url&"'>"&menu_name&"</a>"
Else
menu_temp=menu_temp&"┊<a href='"&menu_url&"'>"&menu_name&"</a>"
End If
Else
If m=0 Then
menu_temp=menu_temp&"<a href='"&menu_url&"' target='o'>"&menu_name&"</a>"
Else
menu_temp=menu_temp&"┊<a href='"&menu_url&"' target='o'>"&menu_name&"</a>"
End If
End If
set childmenu=nothing
m=m+1
next
set goroot=nothing
set goxml=nothing
YCMS_menu=menu_temp
End Function
'输出XML菜单
response.write(YCMS_menu())
%>
以下是menu.xml代码:
程序代码
<?xml version="1.0" encoding="gb2312"?>
<xml>
<menu>
<url name="网站首页" open="0">index.asp</url>
<url name="新闻动态" open="0">News.asp</url>
<url name="文章中心" open="0">Art.asp</url>
<url name="图片展示" open="0">Pic.asp</url>
<url name="影音娱乐" open="0">Dj.asp</url>
<url name="资源下载" open="0">Down.asp</url>
<url name="留言讨论" open="0">Book.asp</url>
<url name="友情连接" open="0">Link.asp</url>
</menu>
</xml>
admin_menu.asp 后台管理XML文件部分
以下是admin_menu.asp
程序代码
<%
'利用ADO.Stream组件保存文件
Function Save(file_body,file_name)
Set OS=Server.CreateObject("ADODB.Stream")
OS.Type=2
OS.Open
OS.Charset="GB2312"
OS.Position=OS.Size
OS.WriteText=file_body
OS.SaveToFile Server.MapPath(file_name),2
OS.Close
Set OS=Nothing
End Function
if Request.QueryString("action")="ok" then
call Save(Request.Form("content"),"menu.xml")
end if
%>
<html>
<head>
<title></title>
</head>
<body>
<form action="?action=ok" method="post">
<textarea style='width:500px;height:200px;' name='content'>
<%=server.execute("menu.xml")%>
</textarea>
<input type='submit' value='修 改' />
</form>
</body>
</html>
程序代码
<%
'---------------------------------------
'作者:野 草
'日期:2006年4月24日
'Q Q:94440079
'---------------------------------------
'读取XML文件函数
Function YCMS_menu()
dim menu_temp,m
Set goxml=Server.CreateObject("Microsoft.XMLDOM")
goxml.load(Server.MapPath("menu.xml"))
Set goroot=goxml.documentElement.selectSingleNode("menu")
m=0
For each child in goroot.childNodes
set childmenu=goroot.childnodes.item(m)
Dim menu_open,menu_title,menu_url
menu_open=childmenu.getAttributeNode("open").nodeValue
menu_name=childmenu.getAttributeNode("name").nodeValue
menu_url=goroot.childNodes.item(m).text
'判断是否是弹出窗口
If menu_open=0 Then
'判断是否是第一个,若是第一个则去掉"┊"
If m=0 Then
menu_temp=menu_temp&"<a href='"&menu_url&"'>"&menu_name&"</a>"
Else
menu_temp=menu_temp&"┊<a href='"&menu_url&"'>"&menu_name&"</a>"
End If
Else
If m=0 Then
menu_temp=menu_temp&"<a href='"&menu_url&"' target='o'>"&menu_name&"</a>"
Else
menu_temp=menu_temp&"┊<a href='"&menu_url&"' target='o'>"&menu_name&"</a>"
End If
End If
set childmenu=nothing
m=m+1
next
set goroot=nothing
set goxml=nothing
YCMS_menu=menu_temp
End Function
'输出XML菜单
response.write(YCMS_menu())
%>
以下是menu.xml代码:
程序代码
<?xml version="1.0" encoding="gb2312"?>
<xml>
<menu>
<url name="网站首页" open="0">index.asp</url>
<url name="新闻动态" open="0">News.asp</url>
<url name="文章中心" open="0">Art.asp</url>
<url name="图片展示" open="0">Pic.asp</url>
<url name="影音娱乐" open="0">Dj.asp</url>
<url name="资源下载" open="0">Down.asp</url>
<url name="留言讨论" open="0">Book.asp</url>
<url name="友情连接" open="0">Link.asp</url>
</menu>
</xml>
admin_menu.asp 后台管理XML文件部分
以下是admin_menu.asp
程序代码
<%
'利用ADO.Stream组件保存文件
Function Save(file_body,file_name)
Set OS=Server.CreateObject("ADODB.Stream")
OS.Type=2
OS.Open
OS.Charset="GB2312"
OS.Position=OS.Size
OS.WriteText=file_body
OS.SaveToFile Server.MapPath(file_name),2
OS.Close
Set OS=Nothing
End Function
if Request.QueryString("action")="ok" then
call Save(Request.Form("content"),"menu.xml")
end if
%>
<html>
<head>
<title></title>
</head>
<body>
<form action="?action=ok" method="post">
<textarea style='width:500px;height:200px;' name='content'>
<%=server.execute("menu.xml")%>
</textarea>
<input type='submit' value='修 改' />
</form>
</body>
</html>