有很解决方法 啊?
可以用Session啊。提交后在插入数据库之后,产生个session,记录下当前的时间。
如果返回又重新提交一次。就判断session里面的那个值和当前的时间进行比较。
如果比较的秒数大于一个时间,就为重复提交,就行了。代码给你看看吧。
第一提交时....
session("RegLast")=now()'得到注册时的时间,防止重复注册
........
'###########注册时间间隔验证#############
if Isempty(session("RegLast"))=False then
LAST = session("RegLast")
CURR = now()
interval = DateDiff("s",LAST,CURR)
if interval<30 then
Errmsg=Errmsg+"<br>"+"<li>请不要连续注册,注册时间间隔不能少于 30 秒!</li>"
FoundErr=true
end if
end if要给分啊!!!!!!!!!!!!!

解决方案 »

  1.   

    在提交按钮中这是就可以了呀。
    private void Button1_Click(...)
    {
      提交留言..
      Button1.Enabled = False;
    }
      

  2.   

    mywebcn(被淹死的鱼)的方法太耗资源了
    楼上的那个就是我的方法,但好像不行啊,我一直点击,它就一直提交,然后提交后它才变灰,晕倒~~~
      

  3.   

    spgoal(spgoal)Button1.Enabled = False;
    提交留言..
    这样不就行了啊。
      

  4.   

    但在ASP中页面是提交到另一个页面,然后进行数据处理再回到原来的页面,这样提交的时候按钮变灰,然后回到页面后按钮会恢复可用状态
    但现在asp.net却不是,都是在一个页面提交,然后触发事件,然后数据绑定,但这样我不断点击按钮,还是一直提交,难道要用一个viewstate或者是一个变量记录其点击数?
      

  5.   

    那就用VIEWSTATE来代替开始给你说的SESSION来保存提交的时间,这个时间不会变了。再用它和当前时间比较的方法来做。也可以吧。
      

  6.   

    如果没有必要,最好不要使用过多session及viewstate
      

  7.   

    你是不是说一个页面会有多次提交的问题?你可以这样试试。
    在HTML中,加入如下代码:
    <input type="button" value="Button" id="Button1" runat="server" onclick="EnabledButton();">
    ...
    <script language="javascript">
    function EnabledButton()
    {
    document.all["Button1"].disabled=true;
    }
    </script>
    然后在页面上双击按钮,在Button1_ServerClick事件中加入你的提交代码。
      

  8.   

    我的做法是直接在数据库中设置为不能重复,然后用asp.net截获出错代码
    然后分类加以控制,我的简单BBS就是这么做的。
    http://www24.brinkster.com/genie517/Forum/BBS.aspx
      

  9.   

    究竟用了asp.net后,以前的客户端JS还有多少可利用的?
    从减轻服务器端负担的角度来看,是否应该还是象以前编写ASP程序一样能不用服务器资源就尽量不用
      

  10.   

    通过客户端的IP地址验证
    在C#中引用System.web.HttpRequest