微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题用ASP编写留言板
栏目网络与通信
作者夏敏捷
发布2001年7期
  下面给一个用ASP编写的留言板程序的完整代码。
  Guestbook.htm为客户在浏览器中看到的交互式表单页面,其源代码如下:
  <html>
  <head><title>留言板</title></head>
  <body>
  <center><h2>请留下您的建议</h2>
  <Form method ="post" action ="Guestbook.asp">
  您的名字:<input type =text name="Name" size=33><br>
  您的Email:<input type =text name="email" size=32><br>
  主题:<input TYPE="TEXT" NAME="Subject" SIZE="36"><br>
  留言内容: <br><textarea name ="Memo" COLS=60 ROWS=10></textarea><p>
  <input TYPE="Submit" NAME="SEND" VALUE="提交留言">
  <input TYPE="RESET" VALUE="清除重写">
  <p>
  <a HREF="databook.asp">浏览留言</a>
  </form></center> </body></html>
  在databook.htm文档中存储的是各位来宾的留言,特殊之处是在文件中要使用一个定位字符串“<!----->”将文件的开始部分和具体的客户留言部分分开。ASP程序将在“<!----->”所在的位置之后插入客户的留言。
  databook.htm的源文件为:
  <html><head><title>看留言</title></head>
  <body text="#00000" vlink="#990099" link="#333399">
  <center><h1>查看留言</h1></font></center>
  <!----->
  <留言插入位置>
  </body></html>
  这样,最新的留言出现在页面的最上端;如果要把最新的留言放在页面的下端,则只需将其中的定位字符串“<!----->”移到客户留言部分和HTML文件结尾部分之间的位置就行了。
  需注意的是:<!----->字符串一定要单独占一行。
  Guestbook.asp文件:
  <%
  ' 读取各输入框的数据
  Name = Request("Name")
  Email = Request("Email")
  Subject = Request("Subject")
  Memo = Request("Memo")
  ' 检查各输入框是否输入有数据
  If Name = "" Or Memo = "" Then
  Response.Write "输入框不能为空白!"
  Response.End '不再处理以下的程序
  End If
  ' 第一行包含"姓名"与"Email"
  Line1 = "留言人:" & Name
  Line1 = Line1 & String(5, " ")  ' 插入5个汉字空格
  Email = "<A HREF=mailto:" & Email & ">" & Email & "</A>"
  Line1 = Line1 & "Email(Viii)" & Email & "<BR>"
  ' 第二行
  Line2 = "主 题:" & Subject & "<BR>"
  ' 第三行为"留言",先将留言中的换行符vbCrLf 换成<BR>
  Memo = Replace( Memo, vbCrLf, "<BR>") 
  ' 为了显示不同的背景颜色,采用表格输出
  Line3 = "<TABLE BORDER=0 BGCOLOR=#00FFFF><TR><TD>"
  Line3 = Line3 & Memo & "</TD></TR></TABLE>"
  ' 第四行为留言"时间"
  Line4 = "时 间:" & Now
  On Error Resume Next ' 忽略所有的错误
  ' 建立 FileSystemObject对象
  Set fso = Server.CreateObject("Scripting.FileSystemObject")
  Application.Lock
  ' 取得databook.html及databookold.html的完整路径
  FilePath = Server.MapPath("databook.html")
  OldFilePath = Server.MapPath("databookold.html")
  ' 将databook.html更名为databookold.html
  fso.MoveFile FilePath, OldFilePath
  ' 打开databookold.html
  Set fin = fso.OpenTextFile(OldFilePath, ,True)
  ' 建立databook.html
  Set fout = fso.CreateTextFile(FilePath)
  ' 将留言簿中字符串"<!----->"前面的内容写入文件
  Do
  str=fin.readline
  fout.WriteLine str
  Loop While str <> "<!----->"
  ' 写入访问者留言
  fout.WriteLine Line1
  fout.WriteLine Line2
  fout.WriteLine Line3
  fout.WriteLine Line4
  fout.WriteLine "<HR>"
  ' 将留言簿中以前的留言内容写入databook.html文件
  do while fin.atendofstream=false
  str=fin.readline
  fout.WriteLine str
  loop
  ' 关闭databookold.html
  fin.Close
  ' 删除databookold.html
  fso.DeleteFile OldFilePath, True
  Application.UnLock
  ' 将网页导至"浏览留言"的网页databook.asp
  Response.Redirect "databook.asp"
  %>
  databook.asp文件:显示留言内容
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <title>访问者留言簿</title>
  </head>
  <body TEXT="#000000" BGCOLOR="#FFFFFF" BACKGROUND="b01.jpg">
  <h2 ALIGN="CENTER">留言簿</h2>
  <!--#include file="databook.html"-->
  <hr WIDTH="100%">
  <a HREF="guestform.html">
  <p align="center">返回留言表单</a></p>
  </body>
  </html>