日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

ASP如何防止表單重復(fù)提交(2)_ASP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:如何解決left截取字符標(biāo)題長度不一
我們經(jīng)常看到直接用left截字符串時,因為標(biāo)題中會出現(xiàn)漢字和英文共存,所以造成兩條新聞標(biāo)題長度不一,為了解決這個問題我們可以使用下面這個函數(shù)。 % ’************************************************** ’函數(shù)名:gotTopic ’作用:截字符串,漢字一個算


 二、如何使用 

 有兩個地方要用到上述函數(shù),即表單生成時與結(jié)果處理時。假設(shè)上述四個子程序已經(jīng)放入包含文件Forms.inc中,下面的代碼根據(jù)FID值來決定生成表單還是處理表單結(jié)果,它所描述的處理過程適合于大多數(shù)ASP應(yīng)用:

<!--#include file="forms.inc"-->
<HTML>
<HEAD>
<TITLE>表單提交測試</TITLE>
</HEAD
<BODY>
<%
If Request("FID") = "" Then
GenerateForm
Else
ProcessForm
End If
%>
</BODY>
</HTML>


 GenerateForm負責(zé)生成表單,表單中應(yīng)該含有一個隱藏的FID,如:

<%
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
%>


 ProcessForm負責(zé)處理通過表單提交的內(nèi)容,但在處理之前應(yīng)該先調(diào)用CheckFID()檢查當(dāng)前表單是否已經(jīng)提交,代碼類如:


<%
Sub ProcessForm()
If CheckFID() Then
Response.Write "你輸入的內(nèi)容是" & Request.QueryString("param1")
RegisterFID
Else
Response.Write "此表單只能提交一次!"
End If
End Sub
%> 


 三、限制與改進措施 

 上面的asp教程我們介紹了在當(dāng)前會話期間限制同一表單被多次提交的一種方法。在實際應(yīng)用中可能需要從多方面加以改進,例如:

 ⑴ 在登記表單ID之前檢查用戶輸入數(shù)據(jù)的合法性,使得數(shù)據(jù)不合法時用戶可以按“后退”按鈕返回,在修正后再次提交同一表單。

 ⑵ 這種對表單提交的限制最多只能在當(dāng)前會話期間有效。如果要求這種限制能夠跨越多個會話,那么就要用到Cookeis或數(shù)據(jù)庫來保存相關(guān)數(shù)據(jù)了。

 ⑶ 這種方法是不安全的。它僅用于防范誤操作,不能防止熟練用戶有意地多次提交同一表單。 

分享:解讀用asp編寫類似搜索引擎功能的代碼
首先建一個 access 數(shù)據(jù)庫 ,庫中有一個URLINDEX表,其中URL和Keywords字段分別添加了索引,如下: URL 文本(索引:有(無重復(fù))) Title文本 Description文本 Summary文本 Keywords文本(索引:有(無重復(fù))) 程序文件doquery.asp,代碼: HTMLHEADTITLE簡單搜索引擎

共2頁上一頁12下一頁
來源:模板無憂//所屬分類:ASP教程/更新時間:2010-02-01
相關(guān)ASP教程