限制表单提交率

Avi*_*X14 2 php mysql forms cookies limit

在我的新网站上,我希望通过限制用户每小时最多2个帖子来减少垃圾邮件(这可能会改为允许更多,但现在只有2个)我设计了一种使用cookie的方法,但是,由于某种原因,该网站不是设置cookie,这是我的cookie代码:

    $sql = "INSERT INTO mysql_table (timestamp,entry,uid,allowcomments) VALUES ('$timestamp','$entry','".rndTxt(16)."','$allowcommenting')";

    $result = mysql_query($sql) or print ("Can't insert into table.<br />" . $sql . "<br />" . mysql_error());

   if ($result != false) {

        if(isset($_COOKIE['AnonPost']))
        {
        $hour = time() + 3600; 
        setcookie("AnonPost", "2", $hour); 
        }

        else {
        $hour = time() + 3600; 
        setcookie("AnonPost", "1", $hour); 
        }

        print "<meta HTTP-EQUIV='REFRESH' content='0; url=index.php'>";
    }

     mysql_close();
Run Code Online (Sandbox Code Playgroud)

然后一个后来的if/else语句检查它是否存在,以及该值是什么(如果它不存在则会看到该网站正常,如果它存在,并且val = 1则它会显示一条消息,说明只有一个发布左侧,如果val = 2,他们会收到一条消息,说他们这小时已经没用了帖子.)

这适用于我的本地主机,但不在网站本身(http://aviatex14.co.uk/anonpost/)任何想法为什么?

除此之外,我知道这不是限制帖子的最佳方式,因此,任何人都可以帮我限制表单提交,或者告诉我我的cookie问题吗?

dqh*_*cks 6

为了减少垃圾邮件,有很多方法

验证码系统.http://www.google.com/recaptcha

帐户创建期间确认电子邮件

邮寄期间的垃圾邮件识别.寻找垃圾关键字.

表格中的蜜罐字段.这使用CSS来隐藏每个表单上的蜜罐输入字段.如果请求到达填写了该字段的服务器,则您知道机器人提交了表单并且可以忽略该请求.

信誉系统就像堆栈交换一样.只有在建立了一定数量的产品后,您才允许用户执行某些操作.