首页
印 像 新 闻 系 统
网站首页 公告信息 编程实例 PHP函数 摄影无界 全景展示 我的作品 意见专栏
 

ASP和XML制作留言系统

【2006年02月14日 14:00:28】 【阅读:次】 【字体:大 中 小 默认】 【背景:#换背景 #换背景 #换背景 #换背景 #换背景 #换背景 #换背景 默认】

演示地址

http://www.115000.com.cn/liuy/message/

本程序不够完善希望与大家共同学习分享!

表单页:post.asp

<form action="Post.asp?action=add" method="post" name="form" onSubmit="return post()">
<div id="addmsgcenter" class=post><div id="addmsgleft">
<div id="addmsgleftbody">
<div id=addmsgheight>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;姓 名:</div>
<div id="middleline"><div></div></div>
<div id=addmsgheight>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OICQ:</div>
<div id="middleline"><div></div></div>
<div id=addmsgheight>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;主 页:</div>
<div id="middleline"><div></div></div>
<div id=addmsgheight>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Email:</div>
<div id="middleline"><div></div></div>
<div id=addmsgheight>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;内 容:</div>
</div>
<div id="addmsgright"><div id="addmsgrightbody">
<div id=addmsgheightright>&nbsp;&nbsp;<input type="text" name="username" size=50></div>
<div id="middleline"><div></div></div>
<div id=addmsgheightright>&nbsp;&nbsp;<input type="text" name="oicq" size=50></div>
<div id="middleline"><div></div></div>
<div id=addmsgheightright>&nbsp;&nbsp;<input type="text" name="homepage" value="http://" size=50></div>
<div id="middleline"><div></div></div>
<div id=addmsgheightright>&nbsp;&nbsp;<input type="text" name="email" size=50></div>
<div id="middleline"><div></div></div>
<div id=addmsgheightright>&nbsp;&nbsp;<textarea name="text" cols="60" rows="5" onpropertychange="this.style.posHeight=this.scrollHeight"></textarea></div>
</div></div>
</div></div>

<div align=center><br>
<input type="text" name="codestr" maxlength="4" size="8"><img src="../getcode.asp">
<input type="submit" name="Submit" value="提交" style="width:80;height=25">

<div id="middleline"><div></div></div>
</div>

</form>

 

数据处理:

if request.querystring("action")="add" then
   call add
end if

sub add

    username = Str.Get_Data("username")
    oicq = Str.Get_Data("oicq")
    homepage = Str.Get_Data("homepage")
    email = Str.Get_Data("email")
 text = Str.Get_Data("text")
 text = checkStr(request.form("text"))
    Posttime = now()
 ip = Request.ServerVariables("REMOTE_ADDR")
    strsourcefile = server.mapPATH("List.xml")       
set objXML = server.CreateObject("microsoft.XMLDOM")

    objXML.load(strsourcefile)  
set objRootlist = objXML.documentElement.selectSingleNode("newlist")   
if objRootlist.hasChildNodes then                                  
   id = objRootlist.lastchild.firstchild.text+1                   
else
   id=1                                                          
end if 
dim brstr                                                          
   brstr=chr(13)&chr(10)&chr(9)                              
   XMLnode=brstr&"<list>"&brstr & _
"<id>"&id&"</id>"&brstr & _
"<username>"&username&"</username>"&brstr & _
"<oicq>"&oicq&"</oicq>"&brstr & _
"<Posttime>"&Posttime&"</Posttime>"&brstr & _
"<ip>"&ip&"</ip>"&brstr & _
"<homepage>"&homepage&"</homepage>"&brstr & _
"<email>"&email&"</email>"&brstr & _
"<text>"&text&"</text>"&brstr & _
"</list>"&chr(13)
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
    objXML2.loadXML(XMLnode)
set rootNewNode=objXML2.documentElement
    objRootlist.appendChild(rootNewNode)
    objXML.save(strSourceFile)
set objXML=nothing
set objXML2=nothing
response.write "<script language=JavaScript>" & chr(13) & "alert(新增留言录入成功。\n\n返回新增留言页面);" & "window.location.href(post.asp);" & ""
response.End()

end sub

 

显示留言:main.asp见下页......$Page_Split$

dim strSourcefile,pageurl,allnodesnum,PageNum,PageNo,StarNodes,EndNodes
dim id,username,oicq,posttime,ip,homepage,email,text,i,n
    strSourcefile = server.MapPath("list.xml")
set objXML = server.CreateObject("microsoft.FreeThreadedXMLDOM")
    objXML.load(strSourcefile)                                          
set objRootsite = objXML.documentElement.selectSingleNode("newlist")
   pageurl="?"
   allnodesnum = objRootsite.childNodes.length-1   
PageSize =10
   PageNum=AllNodesNum\PageSize+1      
   PageNo=request.querystring("Page")
if PageNo="" then
   PageNo=PageNum
end if
   StarNodes=PageNo*PageSize-1
   EndNodes=(PageNo-1)*PageSize
if EndNodes<0 then
   EndNodes=0
end if
if StarNodes>AllNodesNum then
   EndNodes=EndNodes-(StarNodes-AllNodesNum)
(StarNodes-AllNodesNum)
   StarNodes=AllNodesNum
end if
if EndNodes<0 then
   EndNodes=0
end if
%>
<html>
<head>
<title>XML留言</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>

<h2 class=Title_right>
<div>
 <a href="main.asp">留言首页</a>
 <a href="Post.asp">签写留言</a>
</div>
 <a href=list.xml target="_blank">数据库</a>
</h2>
<%
Do While StarNodes>=EndNodes
从结束节点到起始节点之间读取节点数据
id = objRootsite.childnodes.item(starnodes).childnodes.item(0).text            获得id
username = objRootsite.childnodes.item(starnodes).childnodes.item(1).text            获得用户名
oicq = objRootsite.childnodes.item(starnodes).childnodes.item(2).text          获得用户来自那里
posttime = objRootsite.childnodes.item(starnodes).childnodes.item(3).text              获得留言时间
ip = objRootsite.childnodes.item(starnodes).childnodes.item(4).text              获得ip
homepage = objRootsite.childnodes.item(starnodes).childnodes.item(5).text              获得用户主页
email = objRootsite.childnodes.item(starnodes).childnodes.item(6).text               获得用户Eamil
text = objRootsite.childnodes.item(starnodes).childnodes.item(7).text                 获留言内容


text = replace(text,chr(13),"<br>")
替代回车
text = replace(text,chr(32)," ")
替代空格
%>
<div id="msgcenter" class=post><div id="msgleft">
<div id="msgleftbody">
<br>姓 名:<%=username%>
<br>时 间:<%=posttime%>
<br>I P:<%=IP%>
</div>
<div id="msgright"><div id="msgrightbody"><br>
<a target=blank href=http://wpa.qq.com/msgrd?V=1&Uin=<%=oicq%>&Site=<%=username%>&Menu=yes><img border="0" SRC=http://wpa.qq.com/pa?p=1:<%=oicq%>:8 alt="点击这里给[<%=username%>]留言"></a>
<a href="<%=homepage%>" target=_blank title="<%=username%>的主页"><img src="images_edit/web.gif" width="42" height="16" border="0"></a>
<a href="mailto:<%=email%>" title="给<%=username%>写信" target="_blank"><img src="images_edit/email.gif" width="42" height="16" border="0"></a>
<a href="?action=del&delid=<%=id%>" title=""><img src="images_edit/delete.gif" width="42" height="16" border="0"></a>
<a href="#" title="跳转页首"><img src="images_edit/top.gif" width="35" height="15" border="0"></a>
<br>

<div id="middleline"><div></div></div>
<br><%=ubb_htm(text)%><br><br></div></div>
</div></div>
<%
StarNodes=StarNodes-1
loop
%>
<div class=linktitle align=right name=foot>
<%
       response.write "显示 <font color=red>"&PageSize&"</font> 条信息 共:<b>"&allnodesnum+1&"</b>条记录 共:<b>"&PageNum&"</b>页"
 if cint(pageno)<>pagenum then
    response.write "<a href="&pageurl&"page="&cstr(pageno+1)&">上一页</a>"
 end if
if pageno+3 < pagenum then
   response.write " [<a href="""&pageurl&"page="&pagenum&""">首页</a>] ..."
end if
if pagenum>pageno+3 then
   endpage=pageno+3
else
   endpage=pagenum
end if
   i=endpage
   n=1
Do While i>0 and i<=endpage
     if not i<1 then
     if i = clng(pageno) then
              response.write " <font color=red>"&pagenum-i+1&"</font> "
     else
              response.write "<a href="""&pageurl&"page="&i&""">["&pagenum-i+1&"]</a>"
     end if
     end if
    n=n+1
 i=i-1
loop
if pageno > 4 then
   response.write " ... [<a href="""&pageurl&"page=1"">尾页</a>] "
end if
if cint(pageno)<>1 then
   response.write "<a href="&pageurl&"page="&cstr(pageno-1)&">下一页</a>"
end if
set objXML=nothing


(『印像空间』 【本文来源:『笔记』】 【作者:未知】 【录入:留印】)
限200字,剩余 字
关 键 字:
    
搜索条件: