Example #1
0
 /**
  * 注册
  */
 public function actionGetRegister()
 {
     $response = array();
     $phone = trim($this->request->getParam('phone'));
     $email = trim($this->request->getParam('email'));
     $password = trim($this->request->getParam('password'));
     $checkCode = trim($this->request->getParam('checkCode'));
     $verifyMess = trim($this->request->getParam('verifyMess'));
     $verifyCode = FCookie::get(FConfig::item('config.cookie.phone_key'));
     $verifyCode = Fn::crypt($verifyCode, FConfig::item('config.cookie.phone_code'), 'decode');
     if (!FHelper::FilterPhone($phone)) {
         $response['status'] = 100003;
         $response['content'] = '手机格式错误';
         Yii::app()->end(FHelper::json($response['content'], $response['status']));
     }
     if (!$this->verifyPhone($phone)) {
         $response['status'] = 100004;
         $response['content'] = '手机号已经注册过了';
         Yii::app()->end(FHelper::json($response['content'], $response['status']));
     }
     if (!FHelper::check_email($email)) {
         $response['status'] = 100003;
         $response['content'] = '邮箱格式错误';
         Yii::app()->end(FHelper::json($response['content'], $response['status']));
     }
     if (!$this->verifyEmail($email)) {
         $response['status'] = 100004;
         $response['content'] = '邮箱帐号已经注册过了';
         Yii::app()->end(FHelper::json($response['content'], $response['status']));
     }
     session_start();
     if ($checkCode != $_SESSION['verify_code']) {
         $response['status'] = 100004;
         $response['content'] = '校验码输入有误';
         Yii::app()->end(FHelper::json($response['content'], $response['status']));
     }
     if ($verifyMess != $verifyCode) {
         $response['status'] = 100002;
         $response['content'] = '短信验证码验证失败';
     } else {
         $attr = array('source_type' => 1, 'phone_num' => $phone, 'email' => $email, 'nick_name' => $email, 'password' => md5($password), 'register_ip' => ip2long(Fn::getIp()), 'create_time' => FF_DATE_TIME, 'update_time' => FF_DATE_TIME);
         $this->user_model->attributes = $attr;
         if ($this->user_model->save() && $this->user_model->id) {
             $attr = array('user_id' => $this->user_model->id);
             $this->userInfo_model->attributes = $attr;
             $this->userInfo_model->save();
             $response['status'] = 100000;
             $response['content'] = '注册成功';
             $attr['uid'] = $this->user_model->id;
             $this->user = $attr;
             $this->saveCookie($this->user_model->id, $this->user_model->nick_name, 0);
             $_SESSION['auth_login'] = '******';
             FCookie::del(FConfig::item('config.cookie.phone_key'));
             unset($_SESSION['verify_code']);
         } else {
             $response['status'] = 100002;
             $response['content'] = '注册失败';
         }
     }
     Yii::app()->end(FHelper::json($response['content'], $response['status']));
 }