Sub InitializeFID()
If Not IsObject(Session("FIDList")) Then
Set Session("FIDList")=Server.CreateObject("Scripting.Dictionary")
Session("FID")=0
End If
End Sub
Function GenerateFID()
InitializeFID
Session("FID") = Session("FID") + 1
GenerateFID = Session("FID")
End Function
Sub RegisterFID()
Dim strFID
InitializeFID
strFID = Request("FID")
Session("FIDlist").Add strFID, now()
End Sub
Function CheckFID()
Dim strFID
InitializeFID
strFID = Request("FID")
CheckFID = not Session("FIDlist").Exists(strFID)
End Function
< %Option Explicit%>
< !--#include file="forms.inc"-->
< HTML>
< HEAD>
< TITLE>表单提交测试< /TITLE>
< /HEAD
< BODY>
< %
If Request("FID") = "" Then
GenerateForm
Else
ProcessForm
End If
%>
< /BODY>
< /HTML>
< %
Sub GenerateForm()
%>
< form action="< %=Request.ServerVariables("PATH_INFO")%>"
method=GET>
< input type=hidden name=FID value="< %=GenerateFID()%>">
< input type=text name="param1" value="">
< input type=submit value="OK">
< /form>
< %
End Sub
%>
< %
Sub ProcessForm()
If CheckFID() Then
Response.Write "你输入的内容是" & Request.QueryString("param1")
RegisterFID
Else
Response.Write "此表单只能提交一次!"
End If
End Sub
%>
……