PHP计数器不断重置自身

正确编码

因此,基本上,我有一个将信息提交到我的网站的表单,然后可以在以后批准该信息在我的网站上发布或删除它。

我最近在网站上添加了一个Recaptcha bot检查程序,以便避免垃圾邮件发送者之类的问题,但是问题是我在同一文件(submitinfo.php)中拥有提交页面的过程和布局。

由于验证码不正确,recaptcha进程会自动杀死该页面(因为他们没有机会键入它),所以我认为与其杀死页面,不如说它只是显示一条消息,指出验证码是正确的错误,但如上所述,当用户首次打开页面时,他们还没有机会输入验证码,因此即使他们尚未输入任何内容,也会显示该消息。

我想如果我添加一个计数器,该计数器仅在计数器大于0时显示一条消息,并且每次加载页面时都添加+1。我这样做了,但即使多次验证码不正确,消息也不会出现,我认为是因为每次我按下提交按钮时计数器都会重置。这是代码,以便你们可以看到我实际完成的工作:

$count

settype($count,"integer");

require_once('recaptchalib.php');
 $privatekey = "My Private Captcha Key goes here";
 $resp = recaptcha_check_answer ($privatekey,
                                 $_SERVER["REMOTE_ADDR"],
                                 $_POST["recaptcha_challenge_field"],
                                 $_POST["recaptcha_response_field"]);
// the stuff above is just the code from the captcha
 if (!$resp->is_valid) {
   // What happens when the CAPTCHA was entered incorrectly
   if($count>0){ $errormessage = "block"; //this displays the error message if the counter is greater then 0
   }
   $count++;

 } else{
    //here it submits the info
吉德留斯D

在检查验证$_POST码之前,只需检查一下您是否有数据即可。应该是这样的:

<?php

if ($_POST) {
    // check captcha
    if ($captcha_valid) {
        // persist submitted form data
        // redirect on success
    } else {
        $error = 'captcha';
    }
}

?>
<!-- display form -->

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章