示例#1
0
 public function actionRegister()
 {
     if (isset(Yii::app()->user->roles)) {
         $this->render('return', array('returnurl' => Yii::app()->user->returnUrl));
     } else {
         $model = new RegisterForm();
         if (isset($_POST['RegisterForm'])) {
             // collect user input data
             $model->attributes = $_POST['RegisterForm'];
             //if the input is valid
             if ($model->validate()) {
                 $newuser = new User();
                 $newuser->name = $model->username;
                 $newuser->password = $model->password;
                 $newuser->auth = 1;
                 //update the database
                 if ($newuser->save()) {
                     $login = new LoginForm();
                     $login->attributes = $_POST['RegisterForm'];
                     // validate user input and redirect to the previous page if valid
                     if ($login->validate() && $login->login()) {
                         $this->redirect(Yii::app()->homeUrl);
                     } else {
                         print_r($login->getErrors());
                         exit;
                     }
                 } else {
                     print_r($newuser->getErrors());
                     exit;
                 }
             } else {
                 print_r($model->getErrors());
                 exit;
             }
             // validate user input and redirect to the previous page if valid
         }
         // display the login form
         $this->render('register', array('model' => $model));
     }
 }