public function actionRegister() { $this->layout = '//home/yii'; $userModel = new User(); $UserKey = new UserKey(); $get = Yii::$app->request->get(); //key值不存在 if (!isset($get['key']) || empty($get['key'])) { return $this->render("badlink"); } //key值获取单条信息 $invite = $UserKey->findUseridByKey($UserKey::TYPE_USER_REGISTER, $get['key']); if (!isset($invite)) { return $this->render("badlink"); } //consume_time 不为空表示该key值已经失效 if (!is_null($invite->consume_time)) { return $this->render("badlink"); } $user = $userModel::findOne($invite->id_user); $user->setScenario("activate"); $loadedPost = $user->load(Yii::$app->request->post()); if ($loadedPost && Yii::$app->request->isAjax) { Yii::$app->response->format = Response::FORMAT_JSON; return ActiveForm::validate($user); } if ($loadedPost && $user->validate()) { $user->status = $user::STATUS_ACTIVE; $user->save(false); $invite->consume_time = date("Y-m-d H:i:s", time()); $invite->save(false); return $this->redirect(["/user/login", "email" => $user->email]); } return $this->render("register", ['user' => $user, 'invite' => $invite]); }