用ASP设计一个留言薄(下)

设计

现在说说book.htm,让大家了解一下其中的那个输入FORM的作用,它的action对象是本身,book.asp(等一会儿需要把book.htm改名为book.asp)这个文件,也就是说。表单提交后,由本身来作处理。在这个FORM中,有几个文本输入框,它们分别是name,sex,from,url,email,以及多行文本输入框comments。

  现在把book.htm改名为book.asp,往文件中添加ASP代码。如下:(单引号表示ASP的注析,编译器是不处理的。

  *book.asp

<% @language="vbscript" %>
<%
‘'判断请求方式,当客户端请求文件时,比如直接输入网址:http://active.silversand.net/index.htm这样,就会产生一个GET的请求信息。而提交表单时(表单的方式设为POST),就会产生POST的请求方式,现在判断book.asp这个文件是用户用浏览器打开页面,还是用户提交数据这个动作,以便进行程序处理。
if Request.ServerVariables("REQUEST_METHOD")="POST" then
‘这里判断出是由用户提交表单而调入入的页面,因此进行登记留言处理。
‘创建一个文件组件的服务器实例

set fsFilesys=CreateObject("Scripting.FileSystemObject")
‘打开文本文件server.mappath("/")是返回服务器发行目录的真实路径,也就是比如说:c:\Inetpub\wwwroot这个路径,然后"/realchat/book/book.txt"就是相对于这个路径基础上的路径。

set myText=fsFilesys.OpenTextFile(Server.MapPath("/")&"/realchat/book/book.txt")
‘把文本文件的所有内容读出,保存在Temp这个变量中。

Temp=myText.Readall
myText.Close
‘是否需要添加内容

if Request("task")="insert" Then
‘取得表单的各项的值

Tname=request.form("name")
Tsex=request.form("sex")
Temail=request.form("email")
turl=request.form("url")
Tfrom=request.form("from")
Tcomments=request.form("comments")
Ttime="#&@"&time
if Len(Tcomments)<2 Then
%>
<font size="4" color="red">

<p align="center">对不起!你还未留言。<a href="book.asp">返回</a></font> <%
else
if Lcase(Left(Turl,7))<>"http://" Then
Turl="http://"&Turl
End if
Turl=Lcase(Turl)
‘重新创建数据文件,把原来的覆盖掉。

set myText=fsFilesys.CreateTextFile(Server.MapPath("/")&"/realchat/book/book.txt")
myText.WriteLine(Tname)
myText.WriteLine(Tsex)
myText.WriteLine(Temail)
myText.WriteLine(Turl)
myText.WriteLine(Tfrom)
myText.WriteLine(Tcomments)
myText.writeLine(Ttime)
myText.WriteLine(date)
myText.writeLine(Temp)
myText.Close
%>
<script Language="JavaScript">
document.write("<h1>恭喜!您的留言已顺利提交,请按<a href='disp.asp'>这里</a>查看")
</script>
<%

end if
‘至此,留言已保存入文件book.txt中

End if

else
‘第一次进入输入屏幕,因此显示htmL文件内容。
%>
<html>

<head>
<title>留言薄</title>
<% colorbg="#BED9FC" %>
</head>

<body bgcolor="<% =colorbg %>" background="images/bg.gif">

<p align="center"><img src="http://www.163design.net/a/y/images/gbook.gif" alt="GBook.gif (12142 bytes)" WIDTH="374"
HEIGHT="83"> </p>

<p align="center">[<a href="disp.asp">我要看留言板</a>]  [<a href="../index.asp">返回首页</a>]</p>

<form method="POST" action="book.asp">
<input type="hidden" name="task" value="insert"><div align="left"><table>
<tr>
<td align="right">姓名</td>
<td><img src="http://www.163design.net/a/y/images/bottom-b.gif" alt="BUTTOM-B.GIF (179 bytes)" WIDTH="16" HEIGHT="16"></td>
<td><input name="name" size="46"></td>
</tr>
<tr>
<td align="right">性别</td>
<td><img src="http://www.163design.net/a/y/images/bottom-g.gif" alt="BUTTOM-G.GIF (179 bytes)" WIDTH="16" HEIGHT="16"></td>
<td><input name="sex" size="46"></td>
</tr>
<tr>
<td align="right">来自</td>
<td><img src="http://www.163design.net/a/y/images/bottom-b.gif" alt="BUTTOM-B.GIF (179 bytes)" WIDTH="16" HEIGHT="16"></td>
<td><input name="from" size="46"></td>
</tr>
<tr>
<td align="right">主页URL</td>
<td><img src="http://www.163design.net/a/y/images/homepage.gif" alt="HomePage.gif (1232 bytes)" WIDTH="30" HEIGHT="30"></td>
<td><input name="url" size="46"></td>
</tr>
<tr>
<td align="right">      
         
     
E-mail</td>
<td><img src="http://www.163design.net/a/y/images/email.gif" alt="Email.gif (1197 bytes)" WIDTH="30" HEIGHT="30"></td>
<td><input name="email" size="46"></td>
</tr>
<tr>
<td align="right">留言</td>
<td colspan="2"><textarea wrap="off" name="comments" cols="49" rows="9"></textarea></td>
</tr>
<tr>
<td>     </td>
<td colspan="2"><dl>
<dd align="center">     <input type="submit" value="我写好了">
      <input type="reset" value="重新再写"></dd>
</dl>
</td>
</tr>
</table>
</div>
</form>

<p align="center"> </p>
</body>
</html>
<%
end if
%>
  现在到disp.asp这个文件,这个文件主要完成从book.txt中提取文件内容,然后重新生成htmL代码以显示出留言内容。

  代码如下:

<% @language="vbscript" %>

<html>

<head>
<title>留言薄</title>
</head>

<body background="images/back.gif">

<p align="center"><img src="http://www.163design.net/a/y/images/gbook.gif" alt="gbook.gif (12142 bytes)" WIDTH="374" HEIGHT="83"><%
‘打开数据文件

set fsFilesys=CreateObject("Scripting.FileSystemObject")
set myText=fsFilesys.OpenTextFile(Server.MapPath("/")&"/realchat/book/book.txt")
Tname=myText.ReadLine
%> </p>

<p align="center">[<font color="#00FFFF" size="4"><a href="book.asp">我要写留言</a></font>][<font color="#00FFFF"

时间: 2024-10-26 22:27:13

用ASP设计一个留言薄(下)的相关文章

用ASP设计一个留言薄(上)

设计 首先,我们在做留言薄之前,先做出一个输入屏的界面效果,也就是生成留言部输入屏幕的htmL页,然后在这些htmL源代码中加入ASP脚本,我这里得到的htmL代码如下. *文件名:book.htm <html> <head> <title>留言薄</title> </head> <body bgcolor="#BED9FC" background="images/bg.gif"> <p

用ASP设计一个留言薄

设计 首先,我们在做留言薄之前,先做出一个输入屏的界面效果,也就是生成留言部输入屏幕的htmL页,然后在这些htmL源代码中加入ASP脚本,我这里得到的htmL代码如下. *文件名:book.htm <html> <head> <title>留言薄</title> </head> <body bgcolor="#BED9FC" background="images/bg.gif"> <p

对留言薄的一个漏洞攻击( 原作)如果觉得可以的话可以考虑加入精华供后来者查看

攻击|精华  同事的一个网站被盗了(中了木马),原来想把站点密码再盗过来估计自己没这个水平没有去试(是在etang申请的).看到他申请了一个留言薄就想如果能把留言薄搞回来也行,吓他一吓,发泄发泄.找来找去想从修改资料(要盗密码这里应该是入口)入手,于是我也申请了同样的留言薄进入修改资料一栏,查看源文件如下:------------------------------------<form action="modifyok.asp" method="POST"&

实战ASP(4):循序渐进学留言薄

循序渐进学留言薄      本文以Active Server Pages 为中心,向你全面展示制作的过程,并使用大量的例子循序渐进地为大家进行讲解和演示,让你在不断的理论和实践之中更轻松地跨入ASP的大门.当然在学习应用ASP之前,让我们先来看一下ASP到底有什么优点. ASP(Active Server Pages)动态网页,是微软公司推出的一种用以取代CGI(Common Gateway Interface)通用网关接口的技术.我们可以通过ASP结合HTML语言.ASP指令和ActiveX元

设计并实现用于ASP.NET一个通用的数据存取层应用程序

asp.net|程序|设计|数据 Designing and implementing a versatile data access tier for an ASP.NET applicationBy Paul Abarham In this article, we will drill down deeper in to the design of a n-tier architecture and our focus will be on the data access tier (DAT

设计一个小程序,将已有的asp程序转换为jsp程序

问题描述 设计一个小程序,将已有的asp程序转换为jsp程序 设计一个小程序,将已有的asp程序转换为jsp程序.运用java与web应用 解决方案 说得轻巧,"设计一个小程序",还"运用java与web应用".这是两种不同的技术,不但语言不同,而且类库也不同,就算用到"编译原理"也无济于事. 解决方案二: 这个跨度可有点大了. 解决方案三: 可以参考: <设计一个小程序,将windows转换为国有操作系统> 解决方案四: 这个比较麻

急问!!各位帮帮忙.我想开发一个留言板,但不知道数据库怎么设计?还有需要后台吗?

问题描述 急问!!各位帮帮忙.我想开发一个留言板,但不知道数据库怎么设计?还有需要后台吗? 解决方案 解决方案二:还有大家知道哪有留言板的代码,想直接拿来用,感激不尽解决方案三:可以存数据库也可以存成文件.

asp.net-新手请教大神一个关于JQueryEasyUI下Combogrid控件的一个问题

问题描述 新手请教大神一个关于JQueryEasyUI下Combogrid控件的一个问题 请教如何才能如图所示显示下拉框里的数据?我引用了例子里同样的方法,可是为什么显示不出来啊? 解决方案 效果图 页面代码,代码中 url: '../combogrid/datagrid_data1.json'里面可以换成你后台请求数据路径 解决方案二: Combogrid的数据使用ajax从服务器上获取,你这里没显示可能有两个原因:1服务器端没传过来数据,2服务器传来了数据,但是你的前台写的有问题. 建议你把

如何设计一个成功的网站

设计     随着网络技术的不断发展,网络应用已经渗透到人类社会的各个角落.作为网络世界的支撑点的网站,更是人们关注的热点:政府利用网站宣传自己的施政纲领,日益成为与百姓交流的直通车:企业利用网站宣传自己的形象,挖掘无限商机:个人利用网站展示个性风采,创建彼此沟通的桥梁.越来越多的人希望拥有网站,开辟网络世界里的一片天地.如何设计一个出色的网站呢?关于这个问题,人们讨论的很多,可以讨论的内容也很多,加之网络技术的飞速发展,很难提出一个绝对权威和正确的设计思路,笔者不才,根据自己的设计体 会,总结