现在要做一个投票系统,就是同一个IP地址,一小时内不能重复投多次票。
请问,应该怎么样实现?
谢谢!!!
只有10分了,先给着,有分时再补上。

解决方案 »

  1.   

    把投票的ip和时间记录到数据库.每次登录验证就ok.
      

  2.   

    到底应该怎么样做比较好呢?还是用cookie?
      

  3.   

    用page.request.UserHostAddress 就可以获取IP
      

  4.   

    page.request.UserHostAddress 得到的地址是本客户端的地址还是客户那边的对外地址?我是担心同一局域网内的两台机器,用page.request.UserHostAddress 得到相同的地址。。
      

  5.   

    string url=Request.Url.AbsoluteUri;  //获取IP把投票的ip和时间记录到数据库.下次登录时判断!
    注意时间判断时减去小时,不要减到天数了?
      

  6.   

    page.request.UserHostAddress 和 Request.Url.AbsoluteUri 分别有什么不同?
      

  7.   

    常用方法是将IP放入COOKIES,投票时比较COOKIES里的IP与用户提交的IP是否一致,一致就不让提交
      

  8.   

    挂在公网上的运行的程序,要取得的当然是公网IP,同一局域网内的两台机器也当然会被记录成同一个IP同一个MAC
      

  9.   

    string strTime=now.Year.ToString()+now.Month.ToString()+now.Day.ToString()+now.Hour.ToString();
    string strIP = getIP();
    自己写个判断记录是否存在的静态方法,需要调用的时候自己用好了,先判断strIp是否存在,再判断strTime是否存在,不存在就记录投票记录好了。
    再具体的代码就不需要了吧?
      

  10.   

    放在cookies中如果清空一次cookies不就可以继续了?不过如果要求不是特别严谨也就勉强可以凑合了。放在服务器需要占用一定资源,不过访问量不是特别大的话应该不是问题,毕竟只需要保留一个小时嘛。