📜  PHP中的 Google reCAPTCHA 集成

📅  最后修改于: 2022-05-13 01:56:51.558000             🧑  作者: Mango

PHP中的 Google reCAPTCHA 集成

在本文中,我们将讨论如何在PHP中集成 Google reCAPTCHA v2。

方法:

  • 在 Google reCAPTCHA 上注册您的网站
  • 提交 HTML 表单
  • 在服务器端获取响应密钥
  • 重新验证密钥并响应用户端。

第 1 步:在 Google reCAPTCHA 上注册您的网站 —在 Google reCAPTCHA 平台上注册您的网站以获取密钥,即编码 HTML 表单所需的站点密钥和密钥。

单击此处转到 Google reCAPTCHA 网站。

在 Google reCAPTCHA 上注册网站的演示

第 2 步:在 HTML 中创建 Google reCAPTCHA 表单——在这里,我们将创建一个简单的 HTML 表单,其中包含操作作为操作。 PHP,一个输入字段和一个按钮。同时,我们需要在我们的 HTML 文档中添加 Google reCAPTCHA CDN 链接,并在表单中添加一个 div 标签,以便在 HTML 文档中获取 reCAPTCHA。

注意:您需要将“your_site_key”替换为您的站点密钥。

例子:

index.html


  

    
    
    
  
    
    
  
    
    

  

    
        

Google reCAPTCHA

                    
                         
                            
            
            
                        
    
  


style.css
.container {
    border: 1px solid rgb(73, 72, 72);
    border-radius: 10px;
    margin: auto;
    padding: 10px;
    text-align: center;
}
    
h1 {
    margin-top: 10px;
}
    
input[type="text"] {
    padding: 10px;
    border-radius: 5px;
    margin: 10px;
    font-family: "Times New Roman", Times, serif;
    font-size: larger;
}
    
button {
    border-radius: 5px;
    padding: 10px;
    color: #fff;
    background-color: #167deb;
    border-color: #0062cc;
    font-weight: bolder;
    cursor: pointer;
}
    
button:hover {
    text-decoration: none;
    background-color: #0069d9;
    border-color: #0062cc;
}
    
.g-recaptcha {
    margin-left: 513px;
}


PHP


action.php
success == true) {
        echo '';
    } else {
        echo '';
    }
}
  
?>


样式.css

.container {
    border: 1px solid rgb(73, 72, 72);
    border-radius: 10px;
    margin: auto;
    padding: 10px;
    text-align: center;
}
    
h1 {
    margin-top: 10px;
}
    
input[type="text"] {
    padding: 10px;
    border-radius: 5px;
    margin: 10px;
    font-family: "Times New Roman", Times, serif;
    font-size: larger;
}
    
button {
    border-radius: 5px;
    padding: 10px;
    color: #fff;
    background-color: #167deb;
    border-color: #0062cc;
    font-weight: bolder;
    cursor: pointer;
}
    
button:hover {
    text-decoration: none;
    background-color: #0069d9;
    border-color: #0062cc;
}
    
.g-recaptcha {
    margin-left: 513px;
}

第 3 步: PHP后端 —我们已经成功提交了 HTML 表单,现在是编写PHP后端代码的时候了。提交表单后,在服务器端,我们使用“isset()”函数检查是否提交了有效表单。验证后,我们在 $name 变量中获取名称,并在 $recaptcha 变量中获取 Google recaptcha 响应。

代码片段:

PHP


第 4 步:验证验证码——为了验证验证码,我们需要向以下 URL 发出 post 请求。

  • 网址: https://www.google.com/recaptcha/api/siteverify?secret=&response=
  • secret_key:您将从 Google 控制台获取此密钥,即 Secret Key。
  • response_key:当用户提交表单时,这个key来自客户端。
  • g-recaptcha-response 是浏览器在表单提交时生成的响应键的名称。如果它的空白或 null 表示用户没有选择验证码,则返回错误。
  • 您需要将“your_secret_key”替换为您的密钥。

行动。 PHP

success == true) {
        echo '';
    } else {
        echo '';
    }
}
  
?>

输出: