YIIユーザー認証とセッションが働いていません
-
11-12-2019 - |
質問
私はYiiのウェブサイトを構築しています、そして私はユーザー認証ステップで立ち往生しています。私が私がしても、私はユーザーを認証することも、セッションでいくつかの値を保存することはできません。
私のUserIdentityコンポーネントは次のとおりです。
class UserIdentity extends CUserIdentity
{
private $_id;
public function authenticate(){
if(($userRecord = Admin::model()->findByAttributes(array('username'=>$this->username)))===null){
return $this->errorCode=self::ERROR_USERNAME_INVALID;
}
if($userRecord->password!=hash('sha256', $this->password)){
return $this->errorCode=self::ERROR_PASSWORD_INVALID;
}
$this->_id=$userRecord->id;
$this->setState('title', $userRecord->username);
Yii::app()->session['clientId'] = $userRecord->clientId;
Yii::app()->session['id'] = $userRecord->id;
Yii::app()->session['loggedin'] = true;
return $this->errorCode=self::ERROR_NONE;
}
public function getId(){
return $this->_id;
}
}
.
My Yii:app()->user->isGuest
は常にtrueを返し、Yii::app()->user->id
は何も返しません。
それが私がYii::app()->session['loggedin']
を使用して認証を実行しようとした理由です。しかし、それでも機能していません。このYii::app()->session
のようなセッション配列にアクセスすると、エラーProperty "CWebUser.session" is not defined.
が表示されます。
これは本当にイライラすることです。私はyiiに慣れています。助けてください。
解決
login
機能cwebuser
フォローこのチュートリアル。
所属していません StackOverflow