shielda / captcha-php
Official PHP SDK for Shielda Captcha (کتابخانه رسمی PHP برای شیلدا کپچا)
dev-main
2026-10-13 08:22 UTC
Requires
- php: >=7.4 || >=8.0
- ext-curl: *
- ext-json: *
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-13 08:30:47 UTC
README
کتابخانه رسمی و مستقل PHP برای اعتبارسنجی چالشهای امنیتی سامانه شیلدا (Shielda). این پکیج فاقد هرگونه وابستگی به فریمورکهای سنگین است و در هر پروژه و فریمورک PHP (مانند Symfony، CodeIgniter، Slim یا کدهای PHP خام) قابل استفاده است.
📦 نصب با Composer
composer require shielda/captcha-php
🚀 نحوه استفاده
۱. نمایش کپچا در فرم HTML
<?php require_once __DIR__ . '/vendor/autoload.php'; use Shielda\Shielda; $siteKey = 'your_site_key_here'; $secretKey = 'your_secret_key_here'; $shielda = new Shielda($siteKey, $secretKey); ?> <!DOCTYPE html> <html lang="fa" dir="rtl"> <head> <meta charset="UTF-8"> <title>ورود به سایت</title> <!-- لود اسکریپت شیلدا --> <?= $shielda->getScriptTag(); ?> </head> <body> <form method="POST" action="login.php"> <input type="text" name="username" placeholder="نام کاربری" required> <input type="password" name="password" placeholder="کلمه عبور" required> <!-- نمایش باکس کپچا --> <?= $shielda->getWidgetTag(); ?> <button type="submit">ورود</button> </form> </body> </html>
۲. اعتبارسنجی در سرور (سمت Backend)
<?php require_once __DIR__ . '/vendor/autoload.php'; use Shielda\Shielda; $shielda = new Shielda('YOUR_SITE_KEY', 'YOUR_SECRET_KEY'); if ($_SERVER['REQUEST_METHOD'] === 'POST') { // روش اول: اعتبارسنجی خودکار از $_POST if ($shielda->verify()) { echo "کپچا با موفقیت تایید شد! کاربر مجاز است."; } else { echo "خطا در تایید کپچا: " . $shielda->getLastError(); } // یا روش دوم: ارسال دستی توکن $token = $_POST['darban-captcha-response'] ?? ''; $details = $shielda->verifyWithDetails($token); /* خروجی نمونه $details: [ 'success' => true, 'challenge_ts' => '2026-10-13T10:00:00Z', 'hostname' => 'yourdomain.com' ] */ }