Asp的编程实例
为了尽量简化,我这里只采用四个文件,一个是主文件main.asp和enter.asp(让用户输入用户名),一个是资料输入文件input.asp,一个是显示文件show.asp。原理是定义一个application变量show,然后每次有人说话,我们都把它加到前面;另外显示文件show.asp每三秒钟刷新一次,用于显示show变量.全部工作仅此而已,用其它语言或方法可能需要更复杂的工作,在这里则变得非常简单和明了。(这里没有使用Global.asa文件。)
2.1 main.asp文件
<%
if session("sname")="" then
response.redirect "enter.asp"
end if
;如果用户没有输入名字,则将重新回到名字输入界面
%>
<html>
<frameset rows="80%,20%">
<frame name="show" src="show.asp">
<frame name="input" src="input.asp">
<noframes>
<body>
<p>This page uses frames, but your browser doesn't support them.</p>
</body>
</noframes>
</frameset>
</html>
2.2 enter.asp文件
<%
nickname=request.form("nickname")
;读取用户输入的名字
if nickname="" then
msg=msg+"<font color='ff0000'>请输入您的名称</font><br>"
else
response.cookies("whoami")=nickname
;把用户名字写到cookies中
application.lock
application("show")="<table border=0 bgcolor='ccffcc' width='500'>" _
&"<td><font color='5555ff'><b>来至" & request.servervariables("remote_addr") _
& "的" & request.cookies("whoami") & "大驾光临...</b></font></td></table>" _
& application("show")
; _是分隔符,与VB一样
application.unlock
session("sname")=nickname
response.redirect "main.asp"
end if
%>
<html>
<body>
<form method="POST" action="enter.asp">
你的姓名:
<input type="text" name="nickname" size="20" maxlength="10">
<input type="submit" value="进入聊天室" name="B1">
</form>
</body>
</html>
2.3 show.asp文件
<html>
<head>
<meta http-equiv="refresh" content="3">
;设置每三秒钟刷新一次
<meta name="Microsoft Border" content="none">
<title>聊天的内容</title>
</head>
<body bgcolor="#FFFFFF">
<%=application("show")%>
</body>
</html>
2.4 input.asp文件
<%
mytalk=trim(request.form("txtbox"))
;读取用户写的信息,trim用于去掉后面的空格
application.lock
application("show")="<font color=ff0000 ><b>" & request.cookies("whoami") & _
"</b></font>:" & mytalk & "<br>" & application("show")
;把新的信息添加到application变量show的前面,其中request.cookies("whoami")是从
;cookies中读出该用户的名字。
application.unlock
%>
<html>
<head>
<meta name="Microsoft Border" content="none">
<base target="input">
<title>输入界面</title>
</head>
<body bgcolor="#FFFFFF">
<form method="POST" action="input.asp" target="input">
<p><font color="red"><%=request.cookies("whoami")%></font>
输入:<input type="text" name="txtbox" size="30">
<input type="submit" value="发送" name="go">
</form>
</body>
</html>