Пример #1
0
 /**
  * 注册新用户
  * @param str $username 用户名
  * @param str $password 密码
  * @param str $backurl 例:['user/login'] 用户名密码正确,需要跳转去的页面
  *
  * @return json
  */
 public function RegisterMember($username, $password, $backurl = '')
 {
     $succeurl = empty($backurl) ? Yii::$app->params['idaiyan'] : Yii::$app->params['idaiyan'] . '/index.php/r=' . $backurl;
     if (strlen($password) > self::PASSWORD_MAXLENTH && strlen($password) < self::PASSWORD_MINLENTH) {
         $Member_model = new Member();
         $userone = $Member_model->getByUserName($username);
         if (!$userone) {
             $random = mt_rand(1000, 9999);
             $usercontent = array('username' => $username, 'random' => $random, 'password' => PublicLibrary::password_encode($password, $random), 'is_admin' => 0);
             if ($Member_model->saveMember($usercontent)) {
                 //设置登陆状态
                 $session = Yii::$app->session;
                 $session->isActive ? '' : $session->open();
                 $usersession = array('uid' => $Member_model->uid, 'mobile' => $Member_model->mobile, 'email' => $Member_model->email, 'username' => $Member_model->mobile ? $Member_model->mobile : $Member_model->email, 'nickname' => '', 'is_admin' => 0);
                 $session->set('user', $usersession);
                 $session->close();
                 //增加用户统计信息记录
                 $Mmemberstar = new Memberstat();
                 $Mmemberstar->store($Member_model->uid);
                 $data['id'] = $Member_model->uid;
                 $data['avatar'] = Yii::$app->params['idaiyan-static'] . "static/modules/home/images/temp/avatar.jpg";
                 $data['succeurl'] = $succeurl;
                 $res = PublicLibrary::format_res_encode('0', '注册成功!', $data);
             } else {
                 $res = PublicLibrary::format_res_encode('1', '注册失败!');
             }
         } else {
             $res = PublicLibrary::format_res_encode('5', '该用户已存在!');
         }
     } else {
         $res = PublicLibrary::format_res_encode('8', '密码长度不能小于六位!');
     }
     return $res;
 }