сделать вход сразу после заполнения формы

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
evgeniy123
Сообщения: 401
Зарегистрирован: 2011.11.01, 17:29

Re: сделать вход сразу после заполнения формы

Сообщение evgeniy123 »

caHek2x писал(а):а напишите после строки Yii::$app->getUser()->login($user);
echo Yii::$app->getUser()->id;
die;
чтото выведет ?)

да 341. Но пока его нет в БД
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: сделать вход сразу после заполнения формы

Сообщение zelenin »

evgeniy123 писал(а):
caHek2x писал(а):а напишите после строки Yii::$app->getUser()->login($user);
echo Yii::$app->getUser()->id;
die;
чтото выведет ?)

да 341. Но пока его нет в БД
коммит позже происходит
evgeniy123
Сообщения: 401
Зарегистрирован: 2011.11.01, 17:29

Re: сделать вход сразу после заполнения формы

Сообщение evgeniy123 »

zelenin писал(а):
evgeniy123 писал(а):
caHek2x писал(а):а напишите после строки Yii::$app->getUser()->login($user);
echo Yii::$app->getUser()->id;
die;
чтото выведет ?)

да 341. Но пока его нет в БД
коммит позже происходит

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

...
                Yii::$app->getUser()->login($user);

                echo Yii::$app->getUser()->id;
                die;
                

                if ($user->createEmailConfirmToken() && $user->sendEmailConfirmationMail(Yii::$app->controller->module->getCustomMailView('confirmNewEmail'), 'new_email')) {
                    Yii::$app->getSession()->setFlash('success', Yii::t('users', 'CHECK_YOUR_EMAIL_FOR_FURTHER_INSTRUCTION'));
                    $transaction->commit();


...
 
evgeniy123
Сообщения: 401
Зарегистрирован: 2011.11.01, 17:29

Re: сделать вход сразу после заполнения формы

Сообщение evgeniy123 »

zelenin писал(а):
evgeniy123 писал(а):
caHek2x писал(а):а напишите после строки Yii::$app->getUser()->login($user);
echo Yii::$app->getUser()->id;
die;
чтото выведет ?)

да 341. Но пока его нет в БД
коммит позже происходит

нашел проблему :)

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

public function signup()
    {
        if ($this->validate()) {

            $user = new User();
            $user->scenario = 'registration';
            $user->attributes = $this->attributes;
            $user->status = User::STATUS_ACTIVE;  //  User::STATUS_ACTIVE (old version)
            $user->setPassword($this->password);
            $user->generateAuthKey();
            if ($user->save()) {
                return $user;
            }
            else {
                Yii::warning('oshibochka'.$user->getErrors());
            }
        }

        return null;
    } 
Последний раз редактировалось evgeniy123 2016.12.03, 17:41, всего редактировалось 1 раз.
caHek2x
Сообщения: 1240
Зарегистрирован: 2016.04.12, 20:41

Re: сделать вход сразу после заполнения формы

Сообщение caHek2x »

и после перехода на home там если вывести echo Yii::$app->getUser()->id;
то ничего не возвращает ? может у вас авторизация происходит просто вы чегото ожидаете увидеть чего еще не настроено или не верно настроено ?!

upd: проблема из за коммита была ?
evgeniy123
Сообщения: 401
Зарегистрирован: 2011.11.01, 17:29

Re: сделать вход сразу после заполнения формы

Сообщение evgeniy123 »

caHek2x писал(а):и после перехода на home там если вывести echo Yii::$app->getUser()->id;
то ничего не возвращает ? может у вас авторизация происходит просто вы чегото ожидаете увидеть чего еще не настроено или не верно настроено ?!

upd: проблема из за коммита была ?

из за статуса. До комминта прописал ->login()
evgeniy123
Сообщения: 401
Зарегистрирован: 2011.11.01, 17:29

Re: сделать вход сразу после заполнения формы

Сообщение evgeniy123 »

спасибо всем :)
Закрыто