У меня есть форма входа на сайте, когда пользователь ошибается при входе в личный кабинет, например, 5 раз с вводом пароля или email, выскакивает капча, при чем запрос к базе данных отправляется с помощью ajax, то есть при определенном ответе (когда лимит попыток исчерпан) в DOM добавляется некий div с капчей, вот тоже вставляю я div перед class="yes"
, правильно ли это, так как скорее всего, если удалить этот класс ничего не вставится.
А как можно проверку этой капчи засунуть в php код после ее добавления? Так как, если сделать всегда обязательной проверку на капчу уже в php коде, то при ее отсутствии в DOM, будет выходить ошибка, что капча не заполнена.
Например, ниже код не пойдет:
$checkcaptcha = trim($_POST['checkcaptcha']);
if( $checkcaptcha != $_SESSION['captcha']) $errors .= '<li><strong>Неверно введен проверочный код</strong></li>';
Что-то вроде, если пришли постом какие-то данные, то капча есть, иначе ее нет - не пойдут, это можно все подделать.
Например код ниже, тоже не пойдет:
if($_POST['checkcaptcha']){
$checkcaptcha = trim($_POST['checkcaptcha']);
if( $checkcaptcha != $_SESSION['captcha']) $errors .= '<li><strong>Неверно введен проверочный код</strong></li>';
}
Не могу понять, как реализовать это программно, после ответа ajax. Кто знает, подскажите, пожалуйста. Все уже основное написал, а на этом просто застрял:(
Создайте в сессии переменную
incorrect-attemts
код примет примерно такой вид:
if ($_SESSION['incorrect-attempts'] <= 5) {
// не проверяем капчу
// если вход не удался не забываем инкрементировать переменную
} else {
// проверяем капчу
}
Это очень примерный вид - вреальности стоит проверять есть ли такая переменная, не плодить дубли кода и прочее. Это исключительно идея реализации, ни в коем случае не готовое решение
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Подскажите, пожалуйста, куда двигаться, или что можно почитать по этой теме
Нужно каждые 6 часов чистить заданную папку от файловНигде не могу найти решение
Есть ли где нибудь готовая панель администратора в yii2, что бы шла как шаблон с модулями, где просто остается натянуть свой html шаблон