Php 我想使用AJAX函数验证验证码

Php 我想使用AJAX函数验证验证码,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,我的主页是index.php。我正在使用CAPTCHA,在该页面上提交表单后,它会检查CAPTCHA验证,如果值正确,则会转到form.php。如果该值不正确,则它将保留在同一页上 我的问题是,如果CAPTCHA值不正确,它将进入index.php,并且我在表单中输入的所有值都是null。我想要我在表单中输入的值,即使验证码是错误的,也需要新的验证码文本 if(empty($_SESSION['6_letters_code'] ) || strcasecmp($_SESSION['6_lette

我的主页是
index.php
。我正在使用CAPTCHA,在该页面上提交表单后,它会检查CAPTCHA验证,如果值正确,则会转到
form.php
。如果该值不正确,则它将保留在同一页上

我的问题是,如果CAPTCHA值不正确,它将进入index.php,并且我在表单中输入的所有值都是
null
。我想要我在表单中输入的值,即使验证码是错误的,也需要新的验证码文本

if(empty($_SESSION['6_letters_code'] ) || strcasecmp($_SESSION['6_letters_code'], $_POST['6_letters_code']) != 0)
{
    $errors .= "\n The above code does not match!";
}

if(empty($errors))
{
    header('Location:form.php');
}

function IsInjected($str)
{
    $injections = array('(\n+)',
        '(\r+)',
        '(\t+)',
        '(%0A+)',
        '(%0D+)',
        '(%08+)',
        '(%09+)'
    );

    $inject = join('|', $injections);
    $inject = "/$inject/i";
    if(preg_match($inject,$str))
    {
        return true;
    }
    else
    {
        return false;
    }
}

if(!empty($errors))
{
    header('Location:index.php');
    echo "The above code does not match!";  
}  

最简单的方法是将验证脚本放在表单的同一页上,验证完成后,如果正确,请将用户浏览器重定向到另一页,els将它们放在同一表单页上

现在,假设您正在使用POST方法发送,请输入如下输入字段

<input type="text" name="username" value="<?php echo isset($_POST['username'])? $_POST['username']:'';?>"