...
WEB и WordPress новости, темы, плагины. Здесь мы делимся советами и лучшими решениями для сайтов.

Использование Google reCAPTCHA в формах вашего веб-сайта с помощью PHP

110

Вы хотите интегрировать Google reCAPTCHA на свой сайт? Google предоставляет службу reCAPTCHA, которая добавляет флажок «Я не робот» в вашу форму для проверки пользователей. Эта reCAPTCHA защищает ваши формы от ботов. В этой статье мы изучаем, как добавить и проверить Google reCAPTCHA на веб-сайте с помощью PHP. .

Защита вашей базы данных от спама – важная часть любого веб-сайта. В настоящее время многие боты постоянно отправляют поддельные данные через формы веб-сайтов. Добавление reCAPTCHA на веб-сайт поможет нам остановить регистрацию спама, комментарии, ненормативную лексику и т.д.

Google reCAPTCHA предназначена для того, чтобы узнать, поступает ли входящий запрос от реального человека или от бота.

При этом давайте посмотрим пошаговое руководство по добавлению и проверке reCAPTCHA на вашем веб-сайте.

Примечание: в прошлом мы писали статью о добавлении reCAPTCHA в формы Laravel. Если кто-то хочет интегрировать reCAPTCHA в Laravel, прочтите статью Добавление Google reCAPTCHA в формы веб-сайтов Laravel.

Зарегистрируйте сайт и получите ключи API

Для начала вам необходимо зарегистрировать здесь свой сайт – https://www.google.com/recaptcha/admin. Выберите параметры для reCAPTCHA v2 и установите флажок «Я не робот», как показано на скриншоте.

Использование Google reCAPTCHA в формах вашего веб-сайта с помощью PHP

Если вы собираетесь протестировать его на локальном сервере, используйте строку «localhost» в поле домена.

Заполнив форму выше, вы получите ключ сайта и секретный ключ.

Интегрируйте Google reCAPTCHA

Вы готовы со своими ключами API reCAPTCHA. Затем установите эту библиотеку GitHub, которая позволяет добавлять и проверять reCAPTCHA. Рекомендуемый способ установки этой библиотеки – через Composer.

Откройте терминал в корневом каталоге вашего проекта и выполните команду:

composer require anhskohbo/no-captcha

После установки библиотеки мы можем добавить reCAPTCHA в нашу форму, используя методы, предоставленные в библиотеке.

Например, давайте создадим форму с такими полями, как электронная почта, reCAPTCHA и кнопка отправки.

<?php
require_once "vendor/autoload.php";
 
$secret  = 'YOUR_SECRET_KEY';
$sitekey = 'YOUR_SITE_KEY';
$captcha = new AnhskohboNoCaptchaNoCaptcha($secret, $sitekey);
?>
 
<form method="POST">
    <p>
        <input type="email" class="form-control" placeholder="Enter email address">
    </p>
    <?php echo $captcha->display(); ?>
    <button type="submit" name="submit" class="btn btn-primary">Submit</button>
</form>
<?php echo $captcha->renderJs(); ?>

Обязательно замените заполнители фактическими значениями. В приведенном выше коде функция $captcha->display()отображает флажок «Я не робот». Метод $captcha->renderJs()включает необходимый JS-файл reCAPTCHA.

Теперь, чтобы проверить пользователя, напишите приведенный ниже код при отправке формы.

if (isset($_POST['submit'])) {
    if($captcha->verifyResponse($_POST['g-recaptcha-response'])) {
        //proceed further
    } else {
        echo "Incorrect captcha";
    }
}

Итак, наш окончательный код выглядит следующим образом.

<?php
require_once "vendor/autoload.php";
 
$secret  = 'YOUR_SECRET_KEY';
$sitekey = 'YOUR_SITE_KEY';
$captcha = new AnhskohboNoCaptchaNoCaptcha($secret, $sitekey);
 
if (isset($_POST['submit'])) {
    if($captcha->verifyResponse($_POST['g-recaptcha-response'])) {
        //proceed further
    } else {
        echo "Incorrect captcha";
    }
}
?>
 
<form method="POST">
    <p>
        <input type="email" class="form-control" placeholder="Enter email address">
    </p>
    <?php echo $captcha->display(); ?>
    <button type="submit" name="submit" class="btn btn-primary">Submit</button>
</form>
<?php echo $captcha->renderJs(); ?>

Это оно! Надеюсь, вы узнали об интеграции Google reCAPTCHA в формы вашего сайта. Пожалуйста, поделитесь своими мыслями и предложениями в разделе комментариев ниже.

Статьи по Теме

Источник записи: artisansweb.net

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее