yii 2.0登录用户的会话ID

时间:2017-11-03 09:32:55

标签: yii2 yii2-basic-app

是Yii的新手,这是登录功能(路径/basic/controllers/siteController.php),一旦用户登录,它将呈现登录模板。

用户登录后

如何获取SESSION ID并存储到DB。 ?

public function actionLogin()
{
    if (!Yii::$app->user->isGuest) {
        return $this->goHome();
    }

    $model = new LoginForm();
    if ($model->load(Yii::$app->request->post()) && $model->login()) {
        return $this->goBack();
    }
    return $this->render('login', [
        'model' => $model,
    ]);
}

模型代码(path /models/LoginForm.php)

public function login()
{
    if ($this->validate()) {
        return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600*24*30 : 0);
    }
    return false;
}

1 个答案:

答案 0 :(得分:0)

$session = Yii::$app->session->getId();

将抓住Id。这里有一篇关于会议的好文章http://www.bsourcecode.com/yiiframework2/session-handling-in-yii-framework-2-0/

并保存类似的内容:

$model->session = $session;
$model->save();