我是yii2框架的初学者。我创建了一个自定义登录表单。
此页面在localhost中使用 Xampp 时没有问题,但在几分钟(或刷新)后的 cpanel 中我得到了403 error
。
错误页面的图片:
这是我的登录功能:
//Address of this function: /panel/login
public function actionLogin() {
if(Yii::$app->session->get('user')){
return $this->redirect('../panel/index');
}
if(Yii::$app->request->post()){
$post =Yii::$app->request->post('LoginForm');
$username = $post['username'];
$password = $post['password'];
$user = UserShort::findOne(['username' => $username]);
if($user['username'] == $username){
if($user['password'] == $password){
Yii::$app->session->set('user', $user->id * 3);
return $this->redirect('index');
}else{
Yii::$app->session->setFlash('danger', 'Wrong username or password.');
}
}else{
Yii::$app->session->setFlash('danger', ''Wrong username or password.');
}
}
}
我认为发生此错误是因为session
,但我不知道原因。
这是我的错误页面功能:
//Address of this function: /panel/index
public function actionIndex(){
if(!Yii::$app->session->get('user')){
return $this->redirect('login');
}
$user_id = Yii::$app->session->get('user');
$user_id /=3;
$regProvider = new ActiveDataProvider([
'query' => DoreReg::find()
->where(['user_id' => $user_id])
->orderBy('id DESC'),
]);
return $this->render('index',[
'regProvider' => $regProvider,
]);
}
我必须补充一点,这个错误只发生在/panel/index/
个页面的子集中,而其他页面也能正常工作。
任何人都可以帮我解决这个问题吗?