【www.gdgbn.com--留言】
<%
strSourceFile = Server.MapPath("./") & "List.xml"
"获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.FreeThreadedXMLDOM")
"以自由线程创建一个XML对像
objXML.load(strSourceFile)"把XML文件读入内存
Set objRootsite = objXML.documentElement.selectSingleNode("NewList")
"选取NewList节点
%>
<script language="javascript教程" src="other.js"></script>
留言溥 写新留言
<%
PageSize =10 "假设每页显示10条留言
AllNodesNum =objRootsite.childNodes.length-1
"response.write objRootsite.childNodes.length
"response.end
"获取子节点数据(因为是从节点数从0开始的所最大子节点数要减1)
PageNum=AllNodesNumPageSize+1"算出总页数
PageNo=request.querystring("PageNo")
if PageNo="" then"如果是每一次获得页面则定位到每一页显示最新的留言
PageNo=PageNum
end if
StarNodes=PageNo*PageSize-1"获得起始节点
EndNodes=(PageNo-1)*PageSize"获得结束节点
if EndNodes<0 then
EndNodes=0
end if
"response.write " StarNodes and AllNodesNum==="&StarNodes &"----"&AllNOdesNum&"
"
if StarNodes>AllNodesNum then"判断起始节点数是否超过总的节点数
EndNodes=EndNodes-(StarNodes-AllNodesNum)
"如果超过则结束节点要减去(StarNodes-AllNodesNum)的差值否则下标会超界出错
StarNodes=AllNodesNum
end if
"response.write "StarNodes=_________"&StarNodes &"---"&"
"
if EndNodes<0 then
EndNodes=0
end if
while StarNodes>=EndNodes
"从结束节点到超始节点之间读取节点数据
"response.write "id="&objRootsite.childNodes.item(StarNodes).childNodes.item(0).text
id = objRootsite.childNodes.item(StarNodes).childNodes.item(0).text
"id号
username = objRootsite.childNodes.item(StarNodes).childNodes.item(1).text
"获得用户名
fromwhere = objRootsite.childNodes.item(StarNodes).childNodes.item(2).text
"获得用户来自那里
Posttime = objRootsite.childNodes.item(StarNodes).childNodes.item(3).text
"获得留言时间
homepage = objRootsite.childNodes.item(StarNodes).childNodes.item(4).text
"获得用户主页
email = objRootsite.childNodes.item(StarNodes).childNodes.item(5).text
"获得用户Eamil
text = objRootsite.childNodes.item(StarNodes).childNodes.item(6).text
"获昨留言内容
"*****************************************************************************
"这里使作了XML的DOM来读取数据,显然objRootsite对像所对应的节点为
" objRootsite.childNodes.item(StarNodes)所对应的节点就是节点因为不至一个
节点所以用了item()
"来识别当前节点数据,随着StarNodes的递减节点根着往上移一个个读取
节点数据。
"objRootsite.childNodes.item(StarNodes).childNodes.item(1).text所对应的节点为具体的每个节点的文本值,这里
"(1)所对应的就是username用户名(因为节点的子节点才是我们真正所要的)
"******************************************************************************
text = replace(text,chr(13),"
")
"替代回车
text = replace(text,chr(32)," ")
"替代空格
%>
id号:<%=id%>
姓名:<%=username%>
来自:<%=fromwhere%>
">编辑留言
| " target=_blank title="<%=username%>的主页">主页
| | " title="给<%=username%>写信">信箱 | |
留言时间:<%=Posttime%> |
<%=Replace(text,Chr(13),"
")%>
<%
StarNodes=StarNodes-1
wend
set objXML=nothing
%>
共有<<%=PageNum%>>页
<%
if cint(PageNo)<>PageNum then "分页
response.write "上一页"
end if
if cint(PageNo)<>1 then
response.write "下一页"
end if
%>
list.xml 文件格式
发送保存到xml 文档
<%
username=request.form("username")
if username<>"" then
fromwhere =request.form("fromwhere")
homepage =request.form("homepage")
email =request.form("email")
text =request.form("text")
text =replace(text,"<","<")
Posttime =now()
strSourceFile = Server.MapPath("./") & "List.xml"
"获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
"创建XML对像
objXML.load(strSourceFile)
"把XML文件读入内存中
Set objRootlist = objXML.documentElement.selectSingleNode("NewList")
"选取
if objRootlist.hasChildNodes then
"判断
id = objRootlist.lastchild.firstchild.text+1
"这里获得将要插入子节点的ID号,其ID号为
"的ID号加1(这里我们按照关系型数据库的ID号来递增)
else
"如是没有字子节点则是第一次留言ID号设为1
id=1
end if
brstr=chr(13)&chr(10)&chr(9)
"为了插入XML文件中的节点换行空格排列整齐
"(当然你也可以不用这样只是为了XML数据好看而以)
XMLnode=brstr&""&brstr & _
"&chr(13)
"
"
"
"
"
"
"
"
"根据得到的数据建立XML片段
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
"建立一个新XML对像
objXML2.loadXML(XMLnode)
"把XML版片段读入内存中
set rootNewNode=objXML2.documentElement
"获得objXML2的根节点
objRootlist.appendChild(rootNewNode)
"把XML片段插入到List.xml中
objXML.save(strSourceFile)
"存储lsit.xml文件(因为不存储List.xml只在内存中更新了)
set objXML=nothing
set objXML2=nothing
Response.Redirect("index.asp")
response.end
end if
%>
<script language="javascript" src="other.js"></script>
编辑xml 文档
<%
dim id ,action
id = Request.QueryString("id")
if IsNumeric(id)=false or isNull(id) then
response.write ("参数不正确,请返回!")
response.end
end if
action = Request.QueryString("action")
id = id
if action = "update" then
id = request("id")
username=request.form("username")
fromwhere =request.form("fromwhere")
homepage =request.form("homepage")
email =request.form("email")
text =request.form("text")
text =replace(text,"<","<")
Posttime =now()
strSourceFile = Server.MapPath("./") & "List.xml"
"获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
"创建XML对像
objXML.load(strSourceFile)
"把XML文件读入内存中
Set objRootlist = objXML.documentElement.selectSingleNode("NewList")
"选取
set rootOldNode=objRootlist.childNodes.item(id)
"--------NEW START -----------
brstr=chr(13)&chr(10)&chr(9)
XMLnode=brstr&""&brstr & _
"&chr(13)
"
"
"
"
"
"
"
"
"根据得到的数据建立XML片段
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
"建立一个新XML对像
objXML2.loadXML(XMLnode)
"把XML版片段读入内存中
set rootNewNode=objXML2.documentElement
"===========NEW=============
objRootlist.ReplaceChild rootNewNode,rootOldNode
objXML.save(strSourceFile)
set objXML=nothing
set objXML2=nothing
Response.Redirect("index.asp")
response.end
else
strSourceFile = Server.MapPath("./") & "List.xml"
"获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
"创建XML对像
objXML.load(strSourceFile)
"把XML文件读入内存中
Set objRootsite = objXML.documentElement.selectSingleNode("NewList")
"选取
" response.write objRootsite.childNodes.item(id).childNodes.item(1).text
" response.end
id = objRootsite.childNodes.item(id).childNodes.item(0).text
"id号
username = objRootsite.childNodes.item(id).childNodes.item(1).text
"获得用户名
fromwhere = objRootsite.childNodes.item(id).childNodes.item(2).text
"获得用户来自那里
Posttime = objRootsite.childNodes.item(id).childNodes.item(3).text
"获得留言时间
homepage = objRootsite.childNodes.item(id).childNodes.item(4).text
"获得用户主页
email = objRootsite.childNodes.item(id).childNodes.item(5).text
"获得用户Eamil
text = objRootsite.childNodes.item(id).childNodes.item(6).text
set objXML = nothing
end if
%>
<script language="javascript" src="other.js"></script>
会用到的js文件
// Function 打印版权
function printCopy(){
// wr(" ");
// wr("说明:转载本站内容,请务必保留原作者信息。
本站提供的资料或软件多数是在网上搜集,侵犯了您的版权,请来信告诉我们,本站将删除这些内容。 [记事本][进入首页]");
}
// Function 打印广告
function printAD(){
// wr ("如需广告位和友情连接
请联系lffxunuo@163.com")
}
printCopy()
printAD()
function wr(str){
document.write(str) ;
}
function gotoXunuo(){
window.open("http://www.111cn.net/")
}