为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

ASP中限制同一表单被多次提交

2011-03-08 7页 pdf 216KB 28阅读

用户头像

is_598835

暂无简介

举报
ASP中限制同一表单被多次提交 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  ASP 中限制同一表单被多次提交  出处:站长百科   原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交   本电子书整理自站长百科ASP中限制同一表单多次提交词条,查看内容...
ASP中限制同一表单被多次提交
本电子由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  ASP 中限制同一表单被多次提交  出处:站长百科   原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交   本电子书整理自站长百科ASP中限制同一表单多次提交词条,查看内容请访问网站。  站长百科(www.zzbaike.com/wiki)站长自己的百科全书 分享自己的建站知识 WIKI平台与站 长一道共建知识库 站长百科活动不断 论坛发帖赚银币! 参加 1美元竞拍 更有机会赢 2G超 大免费空间! 超值好礼等您拿     推荐内容: 电子书下载 | 站长百科礼品兑换 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  一、基本工作过程 下面我们依次讨论这四个子程序。 (一)初始化 这里我们要在 Session 对象中保存两个变量,其中: ⑴ 每一个表单对应一个称为 FID 的唯一标识,为使该值唯一要用到一个计 数器。 ⑵ 每当一个表单成功提交,必须在一个Dictionary对象中存储它的FID。 我们用一个专用的过程来初始化上述数据。虽然以后各个子程序都要调用 它,但实际上每一个会话期间它只执行一次: Sub InitializeFID() If Not IsObject(Session("FIDList")) Then Set Session("FIDList")=Server.CreateObject("Scripting.Dictionary") Session("FID")=0 End If End Sub (二)生成表单的唯一标识符 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  下面这个函数 GenerateFID()用于生成表单的唯一标志。该函数首先将 FID 值加 1,然后返回它: Function GenerateFID() InitializeFID Session("FID") = Session("FID") + 1 GenerateFID = Session("FID") End Function (三)登记已提交表单 当表单成功地提交时,在 Dictionary 对象中登记它的唯一标识: Sub RegisterFID() Dim strFID InitializeFID strFID = Request("FID") Session("FIDlist").Add strFID, now() End Sub (四)检查表单是否重复提交 在正式处理用户提交的表单之前,应该在 Dictionary 对象中检查它的 FID 是否已经登记。下面的 CheckFID()函数用来完成这个工作,如已经登记,它返 回 FALSE,否则返回 TRUE: Function CheckFID() 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  Dim strFID InitializeFID strFID = Request("FID") CheckFID = not Session("FIDlist").Exists(strFID) End Function 二、如何使用 有两个地方要用到上述函数,即表单生成时与结果处理时。假设上述四个 子程序已经放入包含文件 Forms.inc 中,下面的代码根据 FID 值来决定生成表单 还是处理表单结果,它所描述的处理过程适合于大多数 ASP 应用: < %Option Explicit%> < !--#include file="forms.inc"--> < HTML> < HEAD> < TITLE>表单提交测试< /TITLE> < /HEAD < BODY> < % If Request("FID") = "" Then GenerateForm Else ProcessForm End If %> < /BODY> < /HTML> 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  GenerateForm 负责生成表单,表单中应该含有一个隐藏的 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 负责处理通过表单提交的内容,但在处理之前应该先调 用 CheckFID()检查当前表单是否已经提交,代码类如: < % Sub ProcessForm() If CheckFID() Then Response.Write "你输入的内容是" & Request.QueryString("param1") RegisterFID Else Response.Write "此表单只能提交一次!" End If End Sub %> 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  三、限制与改进 上面我们介绍了在当前会话期间限制同一表单被多次提交的一种方法。在 实际应用中可能需要从多方面加以改进,例如: ⑴ 在登记表单 ID 之前检查用户输入数据的合法性,使得数据不合法时用 户可以按“后退”按钮返回,在修正后再次提交同一表单。 ⑵ 这种对表单提交的限制最多只能在当前会话期间有效。如果要求这种限 制能够跨越多个会话,那么就要用到 Cookeis 或数据库来保存相关数据了。 ⑶ 这种方法是不安全的。它仅用于防范误操作,不能防止熟练用户有意地 多次提交同一表单。 本电子书由站长百科(www.zzbaike.com)教程组制作  出处:站长百科  原文地址:http://www.zzbaike.com/wiki/ASP中限制同一表单多次提交  本电子书整理自站长百科 ASP中限制同一表单多次提交词条,查看内容请访问网站  更多电子书 站长常用工具: Alexa查询:http://alexa.zzbaike.com/ Alexa中文专题站 Alexa工具条下载 关键词排名检索工具:http://keywordsrank.zzbaike.com/ 在线FTP工具:http://webftp.zzbaike.com/ PR查询工具:http://pr.zzbaike.com/ 关键词密度检测工具:http://keywords.zzbaike.com/ 收录数量查询:http://indexed.zzbaike.com/ Whois查询:http://whois.zzbaike.com/ 反向链接查询:http://linksincount.zzbaike.com/ Gzip查询工具:http://gzip.zzbaike.com SEO 优化教程 SEO 方面的知识有很多,对于新手来说,如果你不知道,不清楚这方面的知识,那么,你可 以看看这两部搜索引擎指南: SEO搜索引擎优化基础教程:http://bbs.zzbaike.com/thread-9952-1-1.html SEO搜索引擎优化高级教程:http://bbs.zzbaike.com/thread-12692-1-1.html 站长百科感谢您下载阅读,多谢支持! ASP中限制同一表单被多次提交 一、基本工作过程 (一)初始化 (二)生成表单的唯一标识符 (三)登记已提交表单 (四)检查表单是否重复提交 二、如何使用 三、限制与改进措施 附录 站长常用工具 SEO优化教程
/
本文档为【ASP中限制同一表单被多次提交】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索