trisnawan/captcha-gateway
最新稳定版本:1.0.0
Composer 安装命令:
composer require trisnawan/captcha-gateway
包简介
Captcha Gateway is a PHP library that provides integration to secure your website forms with CloudFlare Turnstile or Google ReCaptcha.
README 文档
README
Captcha Gateway is a PHP library that provides integration to secure your website forms with CloudFlare Turnstile or Google ReCaptcha.
To use CloudFlare Turnstile, please create a widget in CloudFlare Turnstile.
To use Google ReCaptcha, please create a Google Cloud Console project and then create ReCaptcha.
Instalation
composer require trisnawan/captcha-gateway
Initialization
use Trisnawan\CaptchaGateway\Captcha;
Hardcoded
$captcha = new Captcha("VENDOR", "PROJECT", "SITE_KEY", "SECRET_KEY");
Environment
captcha.vendor = VENDOR
captcha.widget = PROJECT
captcha.site.key = SITE_KEY
captcha.secret.key = SECRET_KEY
$captcha = new Captcha();
Note:
VENDOR,turnstileorrecaptchaPROJECT, ID Project Google ReCaptcha or Widget Name Cloudflare TurnstileSITE_KEY, Site Key or Public KeySECRET_KEY, Secret Key or API KEY
Form
// 1. load script echo $captcha->client->script(); // 2. render echo $captcha->client->render("ACTION", "INPUT_ID", "BUTTON_ID");
Note:
ACTION, action form, example: login, registration, chart, buy, etc.INPUT_ID, input id captcha-token (optional)BUTTON_ID, button submit id (optional)
Example:
<html>
<head>
<?= $captcha->client->script() ?>
</head>
<body>
<form method="post" action="login">
<input type="text" name="username">
<input type="text" name="password">
<?= $captcha->client->render("login-action", "login-captcha", "login-button") ?>
<button type="submit" id="login-button">Login</button>
</form>
</body>
</html>
Validation
// 1. VERIFY - default $validation = $captcha->server->verify("login-action"); // 1. VERIFY - manual token data $token = $_POST['captcha-token']; $validation = $captcha->server->verify("login-action", $token); // 1. VERIFY - manual token data + IP verification $ip = $_SERVER['HTTP_CLIENT_IP'] ?? $_SERVER['REMOTE_ADDR'] ?? null; $token = $_POST['captcha-token']; $validation = $captcha->server->verify("login-action", $token, $ip); // 2. CHECK VALIDATION if(!$validation->isSuccess){ $messageError = $validation->errorMessage; $arrayErrors = $validation->errors; // show error }
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-12-02