captcha не работает

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

captcha не работает

Сообщение DenisKhomusyak »

Всем добрый вэучер.
Проблема такая. Добавил в регистрацию advanced приложения поле капчи.Как я это делал.
Модель:

Код: Выделить всё

public $captcha;
...
 ['captcha', 'required'],
 ['captcha', 'captcha', 'captchaAction' => '/main/default/captcha'],
 
Контроллер:

Код: Выделить всё

'captcha' => [
                'class' => 'yii\captcha\CaptchaAction',
            ], 
Вьюха:

Код: Выделить всё

 <?= $form->field($model, 'captcha')->widget(Captcha::className(), [
                    'captchaAction' => 'default/captcha',
                    'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>',
                ]) ?>
Если ты ввел первый раз верно, то все ОК.Когда вводишь 2 раза к примеру неправильно, то картинка каптчи обновляется, но буквы которые ты вводишь с каптчи оказываются постоянно неверными.В логах ничего не могу найти. Подскажите где трабл?
Изображение
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: captcha не работает

Сообщение maleks »

Обновите yii2
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

maleks писал(а):Обновите yii2
Yii 2.0.8
Изображение
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: captcha не работает

Сообщение maleks »

Вот это есть у вас?:
https://github.com/yiisoft/yii2/commit/ ... c7cc9fcaf5

Если все равно не работает, то дебажьте, ищите проблему, и репортите баг.
lgXenos
Сообщения: 243
Зарегистрирован: 2015.11.30, 15:42

Re: captcha не работает

Сообщение lgXenos »

DenisKhomusyak писал(а):Всем добрый вэучер.
И Вам ваучер.
Сегодня на работе тоже была "проблема" с капчей. Как оказалось - все очень индивидуально для каждого велосипеда.

Был контроллер регистрации из двух экшенов: new и success
Тип регистрации раздвоился. Коллега, недолго думая, сделал route: /register/<type:\d> => register/new
Капча отвалилась...

Т.к. она была добавлена в этот же контроллер. И этот роут ее просто перезаписал
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

maleks писал(а):Вот это есть у вас?:
https://github.com/yiisoft/yii2/commit/ ... c7cc9fcaf5

Если все равно не работает, то дебажьте, ищите проблему, и репортите баг.
Да есть.
Изображение
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

lgXenos писал(а):
DenisKhomusyak писал(а):Всем добрый вэучер.
И Вам ваучер.
Сегодня на работе тоже была "проблема" с капчей. Как оказалось - все очень индивидуально для каждого велосипеда.

Был контроллер регистрации из двух экшенов: new и success
Тип регистрации раздвоился. Коллега, недолго думая, сделал route: /register/<type:\d> => register/new
Капча отвалилась...

Т.к. она была добавлена в этот же контроллер. И этот роут ее просто перезаписал
Дак как решили то?
Изображение
lgXenos
Сообщения: 243
Зарегистрирован: 2015.11.30, 15:42

Re: captcha не работает

Сообщение lgXenos »

DenisKhomusyak писал(а):Дак как решили то?
Дык...
lgXenos писал(а):И этот роут ее просто перезаписал
Лично у нас route.php оказался составленным некорректно
:)
Аватара пользователя
GroZa
Сообщения: 180
Зарегистрирован: 2012.10.16, 17:00
Откуда: Сочи
Контактная информация:

Re: captcha не работает

Сообщение GroZa »

Была точно такая же проблема на yii1. Нужно было задать id приложения в конфиге. Ибо если он не установлен, то id генерируется рандомом при каждом запуске, и следовательно капча сохраняется постоянно в разные места в сессии.
Per aspera ad astra.
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

GroZa писал(а):Была точно такая же проблема на yii1. Нужно было задать id приложения в конфиге. Ибо если он не установлен, то id генерируется рандомом при каждом запуске, и следовательно капча сохраняется постоянно в разные места в сессии.

Код: Выделить всё

<?php
$params = array_merge(
    require(__DIR__ . '/../../common/config/params.php'),
    require(__DIR__ . '/../../common/config/params-local.php'),
    require(__DIR__ . '/params.php'),
    require(__DIR__ . '/params-local.php')
);

return [
    'id' => 'vrng-frontend',
    ...
     
вы про это?
Изображение
lgXenos
Сообщения: 243
Зарегистрирован: 2015.11.30, 15:42

Re: captcha не работает

Сообщение lgXenos »

DenisKhomusyak писал(а):.
Я б все таки предложил покидать капчу по разным контроллерам. Ибо запись 'captchaAction' => '/main/default/captcha' по идее ищет в модуле main, контроллере а потом экшене

А из цитаты
Контроллер:
КОД: ВЫДЕЛИТЬ ВСЁ
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
],
Не совсем ясно в каком именно контроллере
+ какие у него настройки приватности. к примеру только зареганным м.б.
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

lgXenos писал(а):
DenisKhomusyak писал(а):.
Я б все таки предложил покидать капчу по разным контроллерам. Ибо запись 'captchaAction' => '/main/default/captcha' по идее ищет в модуле main, контроллере а потом экшене

А из цитаты
Контроллер:
КОД: ВЫДЕЛИТЬ ВСЁ
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
],
Не совсем ясно в каком именно контроллере
+ какие у него настройки приватности. к примеру только зареганным м.б.
в контролере main/default.
права:

Код: Выделить всё

public function behaviors()
    {
        return [
            'access' => [
                'class' => AccessControl::className(),
                'only' => ['logout', 'signup'],
                'rules' => [
                    [
                        'actions' => ['signup'],
                        'allow' => true,
                        'roles' => ['?'],
                    ],
                    [
                        'actions' => ['logout'],
                        'allow' => true,
                        'roles' => ['@'],
                    ],
                ],
            ],
            'verbs' => [
                'class' => VerbFilter::className(),
                'actions' => [
                    'logout' => ['post'],
                ],
            ],
        ];
    }
 
Изображение
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

думаю проблема в роутах?

Код: Выделить всё

//        'urlManager' => [
//            'enablePrettyUrl' => true,
//            'showScriptName' => false,
//            'rules' => [
//                '' => 'main/default/index',
//                '<_a:error>' => 'main/default/<_a>',
////                'page/<view:[\w\-]+>' => '/main/default/pages',
//                '<_m:[\w\-]+>/<_c:[\w\-]+>/<_a:[\w\-]+>/<id:\d+>' => '<_m>/<_c>/<_a>',
//                '<_m:[\w\-]+>/<_c:[\w\-]+>/<id:\d+>' => '<_m>/<_c>/view',
//                '<_m:[\w\-]+>' => '<_m>/default/index',
//                '<_m:[\w\-]+>/<_c:[\w\-]+>' => '<_m>/<_c>/index'
//            ],
//        ],
Изображение
Аватара пользователя
DenisKhomusyak
Сообщения: 102
Зарегистрирован: 2015.10.18, 22:45
Откуда: Sant Tropetz
Контактная информация:

Re: captcha не работает

Сообщение DenisKhomusyak »

нид хелп:(
Изображение
Jluct
Сообщения: 15
Зарегистрирован: 2016.06.04, 20:41

Re: captcha не работает

Сообщение Jluct »

Доброго времени суток! Примерно такая же проблема(
Использую basic 2.0.8.
В форму записываю например "reloko", а после отправки формы, в сессии уже напр. "[__captcha/site/captcha] => zrmuoo", и captcha становится не валидной.
Притом, что странно. В приложении, я использую captcha в 3х формах и вот какой результат:
1. Контакты - работает на моём локальном сервере, на продакшене нет.
2. Курсы - нигде не работает.
3. Заказ справки - работает везде.


Пробовал всё приводить к работающей форме, не помогает
Ответить