За последние 24 часа нас посетили 19625 программистов и 1413 роботов. Сейчас ищут 1203 программиста ...

ненавязчивая капча

Тема в разделе "PHP для новичков", создана пользователем IvanK, 7 июн 2016.

Метки:
  1. IvanK

    IvanK Новичок

    С нами с:
    7 июн 2016
    Сообщения:
    20
    Симпатии:
    0
    Подскажите пожалуйста, как сделать наиболее гостеприимную капчу - чтобы проверка вылазила, например, только при неправильном вводе логина (в случае авторизации), либо при попытке за минуту отправить более 5 сообщений и т.п.?
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    выводи капчу только при не правильном вводе логина

    где-то записывай сколько сообщений было отправлено за минуту и если это число больше 5, то выводи капчу
     
  3. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.585
    Симпатии:
    1.762
    Ну так и сделать. Посчитать в сессии кол-во неправильных логинов, и вывести капчу. А вообще, поставить от гугла новую - она в любом случае ненавязчивая
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    если злоумышленник будет удалять идентификатор сессии?
     
  5. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.585
    Симпатии:
    1.762
    @denis01, ОК, писать в базу ip
     
  6. IvanK

    IvanK Новичок

    С нами с:
    7 июн 2016
    Сообщения:
    20
    Симпатии:
    0
    Я поставил новую от гугла recaptcha, та что обходится лишь галочкой - но это не гостеприимно для пользователей каждый раз заставлять их убеждать сервер, что он не робот. Они еще не успели ничего подозрительного сделать, а тут на тебе.. Теоретически я понимаю, как это сделать. Подскажите, как посчитать количество сессий? Через cookeis как-то?
    --- Добавлено ---
    Принцип ясен, почитаю про $ _SERVER и $ _COOKIE, наверное из них можно смастерить такую проверку?
     
    #6 IvanK, 7 июн 2016
    Последнее редактирование: 7 июн 2016
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  8. IvanK

    IvanK Новичок

    С нами с:
    7 июн 2016
    Сообщения:
    20
    Симпатии:
    0
    Мельком глянул - так получается, что просто отключив cookeis можно будет гадить? Есть ли какая-то альтернатива?
     
  9. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    да

    пиши в базу данных.
    создай отдельную таблицу, где будешь записывать время когда человек пытался залогинится,
    при это проверяй, если запись была сделана меньше минуты назад, то пребавляй попытки
     
    IvanK нравится это.
  10. IvanK

    IvanK Новичок

    С нами с:
    7 июн 2016
    Сообщения:
    20
    Симпатии:
    0
    Понял, спасибо! попробую