Поиск

Тип поиска

Часто ищут

FFC FPC samsung a32 a325f CTEKLO c oca xiaomi redmi note 10 Xiaomi poco x3 nfc Oppo a5 (2020) bga трафареты samsung a51 a515f xiaomi mi 11 lite amaoe bga redmi note 11 pro 4g poco m4 pro 4g samsung galaxy a52 a525f honor 8x

Последние посты

Спам через форму обратной связи в Prestashop 1.6 ( добавление капчи Google)

Спам через форму обратной связи в Prestashop 1.6 ( добавление капчи Google)

Добавление капчи на страницу contact-us

1: Заходим на сайт reCaptcha и генерируем ключ для вашего домена

2: Добавляем <script src=https://www.google.com/recaptcha/api.js'></script> в header.tpl перед тегом </head>

   или {if $contacts}<script src='https://www.google.com/recaptcha/api.js'></script>{/if} для отображения только на странице контактов

3: Добавляем <div class="g-recaptcha" data-sitekey="[public Google key]"></div> в contact-form.tpl перед тегом </form>

4:  в фаиле /controllers/front/ContactController.php после линии : $this->errors[] = Tools::displayError('Bad file extension');

Добавляем:

    elseif (!($gcaptcha = (int)(Tools::getValue('g-recaptcha-response'))))

    $this->errors[] = Tools::displayError('Captcha not verified');

           

"еще вариант: скачиваем модуль на сайте http://webnewbie.ru  и выполняем пункт 4"

UPG!! 25.02.2018

Как оказалось установка капчи не особо помогает от ботов т.к. отправляется методом POST.
Пока 100% решения не нашли, рано или поздно спамеры все равно находят как обойти
Временное решение - это замена ссылки формы обратной связи в настройках "SEO и URLs"
и добавление тега
<META HTTP-EQUIV="REFRESH" CONTENT="N;URL=адрес">
после {if isset($confirmation)} в фаиле contact-form.tpl
 
где  N - время в секундах (целое число)
    URL - адрес документа - вышей формы обратной связи
например <META HTTP-EQUIV="REFRESH" CONTENT="0;URL=/contact">

где /contact - это страница формы обратной связи

12 Комментария

    • Avatar
      Марина
      Jan 20, 2018

      Здравствуйте. А Вы не могли бы мне установить на сайт. Очень устала чистить почту. Да и сама не очень разбираюсь в этом. Спасибо.

      • Avatar
        LPCShop
        Jan 24, 2018

        Напишите нам на почту shop-kpk@ya.ru c пометкой для Петра, постараемся помочь

    • Avatar
      Иван
      Feb 17, 2018

      Добрый день Вам! спамят сайт http://my-antique.ru/ru/contact-us поставил капчу, но она не работает. пожалуйста подскажите в чем дело.

    • Avatar
      Евгений
      Feb 22, 2018

      Так не работает
      } else if (!($gcaptcha = (int)(Tools::getValue('g-recaptcha-response')))){
      $this->errors[] = Tools::displayError('Captcha not verified');
      }
      _______________________________________________________________________
      Так работает
      } elseif (!($gcaptcha = (int)(Tools::getValue('g-recaptcha-response')))){
      $this->errors[] = Tools::displayError('Captcha not verified');


      и то что в
      взял у гугла с ним работает
      а с вашей почему-то нет

      • Avatar
        LPCShop
        Mar 20, 2018

        поправил, должно работать

    • Avatar
      Евгений
      Feb 22, 2018

      Спасибо за статью, реально помогла!

    • Avatar
      Вован
      Mar 17, 2018

      Так что Петь, решение нашел ?

      • Avatar
        LPCShop
        Mar 20, 2018

        месяц уже полет нормальный. HTTP-EQUIV="REFRESH" помог

    • Avatar
      Олег
      Sep 8, 2018

      Спасибо за подсказку будем пробовать )

    • Avatar
      Infina
      Nov 19, 2019

      На соседней ветке нашел решение: Мне помог модуль на гитхабе. Идея в том, что прежде чем отправить сообщение, нужно авторизоваться. Не надо закрывать форму, боты работают с контроллером, а он отправляет всех на регистрацию. Как-то так. https://github.com/Seleda/ps__stopspamcontactform Перед установкой прочтите в архиве файл readme Версии престы 1.6 и 1.7

Оставить комментарий

* Имя:
* E-mail: (не отображаеться)
* Ваш комментарий: