Recaptcha - сервис, который позволяет отличить пользователя от компьютерной программы с помощью определенного теста. Я использую recaptcha в сервисе hobby-work.ru, чтобы предотвратить случайные нажатия на кнопку и, таким образом, уберечь сервер от лишней
нагрузки при автоматической установке CMS.
Итак, нам понадобятся:
- плагин recaptcha
- public и private ключи от recaptcha
Так как для laravel уже есть готовый плагин, то мы используем его и далее настроим его под себя. Ключи возьмем тут
Поехали:
- Добавляем следующие строки в composer.json: [php] { "require": { "greggilbert/recaptcha": "dev-master" } } [/php]
- Выполняем [php]php composer.phar update[/php]
- Выполняем [php]php artisan config:publish greggilbert/recaptcha[/php]
- В app/config/packages/greggilbert/recaptcha/config.php вводим reCAPTCHA public и private ключи
- Добавляем текст в app/lang/[lang]/validation.php: [php]"recaptcha" => ':attribute поле заполнено неверно.',[/php]
С первоначальной установкой и настройкой закончили.
Использовать плагин просто. Для этого в код формы надо добавить {{ Form::captcha() }}, а в коде, где надо выполнить проверку добавить
[php]
$rules = array(
...
'recaptcha_response_field' => 'required|recaptcha',
};
[/php]
В /vendor/greggilbert/recaptcha/src/views находим captcha.blade.php и добавляем код после @endif
Мой код для примера:
[html]
<div id="recaptcha_widget" style="display:none">
<span class="recaptcha_only_if_audio">Enter the numbers you hear:</span>--> <div class="input-group"> <input class="form-control" type="text" id="recaptcha_response_field" name="recaptcha_response_field" placeholder="Введите символы как на картинке" /> <span class="input-group-btn"> <button class="btn btn-default" type="button" onclick="javascript:Recaptcha.reload()">Обновить</button> </div> <div id="recaptcha_image"></div>
</div>
[/html]
Дальше настраивайте под себя.
Прошлые записи
- Эволюция веб-приложений. От статичного HTML до Single Page Application и Progressive Web Application
- Переезд в Калининград
- Была ли спецоперация на Украине неизбежна?
- О serverless технологии для чатботов
- Свободное время на улучшение блога
- o-zhizni-v-kaliningrade-spustya-god
- Продажа гаража из другого города
- В Калининграде спустя полгода
- Выйти на работу или сидеть дома
- Теперь мы живем в старой немецкой квартире и счастливы
- Как за один день найти жилье в августе 2020 (после пандемии) и чуть не остаться на улице с двумя детьми