/** * 注册 */ public function register() { $this->created = NOW_TIME_YmdHis; $this->flag = NOW_TIME_STAMP; if ($this->validate()) { $post_pass = $this->pass; $this->is_bind_user = 1; if ($this->save()) { $this->pass = ZCommonFun::getPass($post_pass); $this->save(); $userInfo = $this->attributes; isset($userInfo['role']) ? null : ($userInfo['role'] = 0); //角色 $userInfo['openidInfo'] = null; //第三方登录信息 ZCommonSessionFun::set_user_session($userInfo); // ZCommonFun::print_r_debug($this); // exit; return true; } return false; } return false; }
/** * 绑定账号 */ public function actionBindAccount() { $this->layout = false; $old_login_uid = ZCommonSessionFun::get_user_id(); if (ZCommonSessionFun::get_user_id() < 1) { $url = Yii::$app->urlManager->createUrl([ZCommonSessionFun::urlLoginUserStr]); return $this->redirect($url); } $model = new User(); if (isset($_POST['User']['user']) && isset($_POST['op'])) { $post = $_POST['User']; $user = isset($post['user']) ? $post['user'] : ''; $pass = isset($post['pass']) ? $post['pass'] : ''; $post = $_POST['User']; //已有账户绑定 if ($_POST['op'] == 1) { $condition['user'] = $user; $model_find = new User(); $model_find = $model_find->find()->where($condition)->one(); if (!$model_find) { $model->addError('user', '用户没有找到'); } else { if ($model_find->pass != ZCommonFun::getPass($pass)) { $model->addError('pass', '密码错误'); } else { if ($model_find->is_bind_user == 1) { $model->addError('user', '账户已被绑定过'); } else { $connection = Yii::$app->db; $transaction = $connection->beginTransaction(); try { $model_find->is_bind_user = 1; $model_find->save(); $model_Oauth = new OauthBind(); $model_Oauth_condition['uid'] = $old_login_uid; $model_Oauth_attributes['uid'] = $model_find->uid; $model_Oauth->updateAll($model_Oauth_attributes, $model_Oauth_condition); $transaction->commit(); ZCommonSessionFun::set_user_session($model_find->attributes); $url = Yii::$app->urlManager->createUrl(['user-profile/bind-list']); return $this->redirect($url); } catch (\Exception $e) { $transaction->rollBack(); $model->addError('user', '绑定失败'); } } } } } else { $model->pass = ZCommonFun::getPass($model->pass); $model = $model->findOne(ZCommonSessionFun::get_user_id()); if ($model) { $model->user = $user; $model->pass = ZCommonFun::getPass($pass); $model->is_bind_user = 1; if ($model->save()) { ZCommonSessionFun::set_user_session($model->attributes); $url = Yii::$app->urlManager->createUrl(['user-profile/bind-list']); return $this->redirect($url); } } else { $model = new User(); $model->user = $user; $model->pass = $pass; $model->addError('user', '用户已被删除'); } } } return $this->render('bind-account', ['model' => $model]); }