Beispiel #1
0
 /**
  * Displays homepage.
  *
  * @return mixed
  */
 public function actionIndex()
 {
     $info = ZCommonSessionFun::get_user_session();
     ZCommonFun::print_r_debug($info);
     exit;
     return $this->render('index');
 }
Beispiel #2
0
 /**
  * qq回调地址
  */
 public function actionCallbackQq()
 {
     $qq = new QQ();
     $access_token = $qq->qq_callback();
     $zhao_uid = ZCommonSessionFun::get_user_id();
     $zhao_uid = $zhao_uid > 0 ? $zhao_uid : '';
     //         ZCommonSessionFun::set_user_session($access_token);
     //         exit;
     $openid = $qq->get_openid();
     $qq = new QQ($access_token, $openid);
     $user_info = $qq->get_user_info();
     $openid = $openid;
     $bind_info['openid'] = $openid;
     $bind_info['nickname'] = $user_info['nickname'];
     $bind_info['headimgurl'] = $user_info['figureurl'];
     ZCommonSessionFun::set_session('bind_info', $bind_info);
     ZCommonSessionFun::set_session('bind', OauthBind::typeQQ);
     //微信登陆类型
     if (intval($zhao_uid) > 0) {
         return $this->redirect($this->bind_url);
     } else {
         ZCommonSessionFun::set_login_type(OauthBind::typeQQ);
     }
     return $this->redirect($this->bind_url);
     /* $model_User = new User();
        $return = $model_User->userBind('', '', $zhao_uid, $openid, OauthBind::typeQQ, $user_info['nickname'], $user_info['figureurl'],true);
        //绑定成功或者已经绑定
        if($return===0 || $return===1){
            $user = $model_User->operationData['user']->attributes;
            $user['nickname'] = $model_User->operationData['user_profile']->nickname;
            $user['head_image'] = $model_User->operationData['user_profile']->head_image;
            $user['openid'] = $openid;
            ZCommonSessionFun::set_user_session($user);
            //qq登录类型
            if(intval($zhao_uid)>0){
                $bind_url = ['user-profile/bind-list'];
                return $this->redirect($bind_url);
            }else{
                ZCommonSessionFun::set_login_type(OauthBind::typeQQ);
            }
            return $this->redirect([ZCommonSessionFun::urlMyStr]);
        } */
     ZCommonFun::print_r_debug($model_User->operationData);
     exit;
 }
Beispiel #3
0
 public function actionTest2()
 {
     $params = ['blank/test2', 'id' => 2];
     echo Yii::$app->urlManager->createUrl($params);
     ZCommonFun::print_r_debug($_SERVER);
 }
 /**
  * Lists all Survey models.
  *
  * @return mixed
  */
 public function actionIndex()
 {
     $this->view->title = '最新';
     if (isset($_GET['code'])) {
         $qq = new QQ();
         $qq->is_mobile = true;
         $access_token = $qq->qq_callback();
         $zhao_uid = ZCommonSessionFun::get_user_id();
         $zhao_uid = $zhao_uid > 0 ? $zhao_uid : '';
         // echo $zhao_uid;
         // ZCommonFun::print_r_debug($access_token);
         // exit;
         $openid = $qq->get_openid();
         $qq = new QQ($access_token, $openid);
         $user_info = $qq->get_user_info();
         $openid = $openid;
         $bind_info['openid'] = $openid;
         $bind_info['nickname'] = $user_info['nickname'];
         $bind_info['headimgurl'] = $user_info['figureurl'];
         ZCommonSessionFun::set_session('bind_info', $bind_info);
         ZCommonSessionFun::set_session('bind', OauthBind::typeQQ);
         //微信登陆类型
         if (intval($zhao_uid) > 0) {
             return $this->redirect($this->bind_url);
         } else {
             ZCommonSessionFun::set_login_type(OauthBind::typeQQ);
         }
         return $this->redirect($this->bind_url);
         /* $model_User = new User();
                     $return = $model_User->userBind('', '', $zhao_uid, $openid, OauthBind::typeQQ, $user_info['nickname'], $user_info['figureurl'], true);
                     // 绑定成功或者已经绑定
                     if ($return === 0 || $return === 1) {
                         $user = $model_User->operationData['user']->attributes;
                         $user['nickname'] = $model_User->operationData['user_profile']->nickname;
                         $user['head_image'] = $model_User->operationData['user_profile']->head_image;
                         $user['openid'] = $openid;
                         ZCommonSessionFun::set_user_session($user);
                         // qq登录类型
                         if (intval($zhao_uid) > 0) {
         
                             $bind_url = [
                                 'user-profile/bind-list'
                             ];
                             return $this->redirect($bind_url);
                         } else {
                             ZCommonSessionFun::set_login_type(OauthBind::typeQQ);
                         }
                         return $this->redirect([
                             ZCommonSessionFun::urlMyStr
                         ]);
                     } */
         ZCommonFun::print_r_debug($model_User->operationData);
         exit;
     }
     $sort = Yii::$app->request->get('sort', 0);
     $this->view->title = $sort > 0 ? '最新' : '最热';
     if ($sort < 1) {
         $this->view->title = ZController::$site_name . ' : 可以自己创建测试的网站';
     } else {
         $this->view->title = ZController::$site_name . ' : 最新';
     }
     $this->layout = false;
     $queryParams = Yii::$app->request->queryParams;
     $queryParams['SurverySearch']['is_publish'] = 1;
     if (isset($_POST['SurverySearch']['title'])) {
         $queryParams['SurverySearch']['title'] = $_POST['SurverySearch']['title'];
     }
     $search = false;
     if (isset($queryParams['SurverySearch']['title'])) {
         $search = $queryParams['SurverySearch']['title'];
     }
     $cache_key_arr = $queryParams;
     $cache_key_arr['sort'] = $sort;
     $cache_key = ZCache::array_to_key($cache_key_arr);
     $cache_data = Yii::$app->cache->get($cache_key);
     // echo 1,'<br/>';
     // 缓存存在,跳转到缓存label
     if ($cache_data) {
         goto cache;
     }
     // echo 2,'<br/>';
     $searchModel = new SurverySearch();
     $query = $searchModel->query($queryParams);
     $count = $query->count();
     // 分页
     $pagination = new Pagination();
     // 每页现实数量
     $pagination->pageSize = $this->pageSize;
     // 总数量
     $pagination->totalCount = $count;
     $offset = $pagination->getOffset();
     $limit = $pagination->getLimit();
     $query->offset($offset);
     $query->limit($limit);
     $op_name = '';
     // 最新
     if ($sort > 0) {
         $query->orderBy(['created' => SORT_DESC]);
         $op_name = '最新';
     } else {
         $op_name = '最热';
         $query->orderBy(['answer_count' => SORT_DESC]);
     }
     $a_models = $query->all();
     $pageCount = $pagination->getPageCount();
     $page = Yii::$app->request->get('page', 0);
     $model_SurveyOperation = new SurveyOperation();
     $models_SurveyOperation = $model_SurveyOperation->getIsTop();
     // 要缓存的数据
     $cache_data = ['models_SurveyOperation' => $models_SurveyOperation, 'searchModel' => $searchModel, 'a_models' => $a_models, 'pagination' => $pagination, 'sort' => $sort, 'op_name' => $op_name, 'search' => $search];
     Yii::$app->cache->set($cache_key, $cache_data, ZCache::HOME_PAGE_TIMEOUT);
     cache:
     // echo 3,'<br/>';
     // exit;
     // echo $pageCount,'=',$page+1;
     // ZCommonFun::print_r_debug($pagination);
     return $this->render('index2', $cache_data);
 }
 /**
  * 分数型问题回答2
  */
 public function actionStep2Answer2($id)
 {
     $this->layout = false;
     $model = Survey::findOne($id);
     if (!$model) {
         //没找到
         $model = new Survey();
     }
     if ($model->is_publish < 1) {
         $this->popupMessage($model->title . '未发布,不能测试');
         exit;
     }
     $data = $model->FindAllQuestionsOptions($id);
     //                 ZCommonFun::print_r_debug($_POST);
     //                 exit;
     $posts = Yii::$app->request->post();
     $error = '';
     if (isset($posts['name'])) {
         is_array($posts['options']) ?: ($posts['options'] = array());
         $op = count($posts['options']) > 0 ? true : false;
         $res = isset($posts['res']) ? intval($posts['res']) : 0;
         $res_model_SurveyResulte = $res > 0 ? SurveyResulte::findOne($res) : null;
         if ($res_model_SurveyResulte && $res_model_SurveyResulte->s_id == $id) {
         } else {
             $res_model_SurveyResulte = null;
         }
         $total_score = 0;
         $save = 0;
         $result = null;
         //保存结果
         $transaction = Yii::$app->db->beginTransaction();
         try {
             $name = isset($posts['name']) ? $posts['name'] : '';
             $year = isset($posts['birth']['year']) ? $posts['birth']['year'] : 2015;
             $month = isset($posts['birth']['month']) ? $posts['birth']['month'] : '01';
             $day = isset($posts['birth']['day']) ? $posts['birth']['day'] : '01';
             $constellation = isset($posts['constellation']) ? intval($posts['constellation']) : 0;
             $constellation = $constellation > 0 && $constellation < 13 ? $constellation : 0;
             $birth = $year . '-' . $month . '-' . $day;
             $birth = date('Y-m-d', strtotime($birth));
             $model_AnswerUser = new AnswerUser();
             $model_AnswerUser->sid = $id;
             $model_AnswerUser->table = 'survey_resulte';
             $res_model_SurveyResulte ? $model_AnswerUser->table_id = $res_model_SurveyResulte->sr_id : null;
             $model_AnswerUser->answer_name = $name;
             $model_AnswerUser->answer_age = $birth;
             $model_AnswerUser->constellation = $constellation;
             $model_AnswerUser->ip = self::getUserIP();
             if (!$model_AnswerUser->save()) {
                 $error = '用户操作失败';
                 $transaction->rollBack();
             } else {
                 foreach ($data['options'] as $key => $value) {
                     foreach ($value as $option) {
                         foreach ($posts['options'] as $question_id => $row) {
                             //找到选项
                             if ($option->qo_id = $row[0]) {
                                 $model_Answer = new Answer();
                                 $model_Answer->table_id = $id;
                                 $model_Answer->question_id = $option->question_id;
                                 $model_Answer->qo_id = $row[0];
                                 $model_Answer->answer_score += $option->option_score;
                                 $model_Answer->au_id = $model_AnswerUser->au_id;
                                 $total_score += $model_Answer->answer_score;
                                 $model_Answer->save() ? $save++ : null;
                             }
                         }
                     }
                 }
                 if ($save > 0) {
                     $model_SurveyResulte = new SurveyResulte();
                     //如果直接选择了答案
                     if ($model_AnswerUser->table == 'survey_resulte' && $model_AnswerUser->table_id > 0) {
                         $result = $res_model_SurveyResulte;
                         //
                     } else {
                         $result = $model_SurveyResulte->getStep2Result($id, $model_AnswerUser->answer_score);
                     }
                     if ($result && !$res_model_SurveyResulte) {
                         //保存回答者结果,防止用户更改数据导致结果丢失
                         $mode_AnswerSurveyResulte = new AnswerSurveyResulte();
                         $mode_AnswerSurveyResulte->attributes = $result->attributes;
                         $mode_AnswerSurveyResulte->save();
                         $model_AnswerUser->table == 'answer_survey_resulte';
                         $model_AnswerUser->table_id = $mode_AnswerSurveyResulte->answer_sr_id;
                     }
                     $model_AnswerUser->save();
                     $transaction->commit();
                     //设置测试数量
                     $model->setAnswerCount($id);
                     $model_UserProfile = new UserProfile();
                     $model_UserProfile->setTestCount($model_AnswerUser->uid);
                     return $this->redirect(['resulte', 'au_id' => $model_AnswerUser->au_id]);
                 } else {
                     $error = '没有选项';
                     $transaction->rollBack();
                 }
             }
         } catch (\Exception $e) {
             $error = '事物异常';
             ZCommonFun::print_r_debug($e);
             $transaction->rollBack();
         }
     }
     $model_Users = null;
     $model_UsersProfile = null;
     if ($model->uid) {
         $zhao_condition['uid'] = $model->uid;
         $model_Users = User::findOne($zhao_condition);
         $model_UsersProfile = UserProfile::findOne($zhao_condition);
     }
     !$model_Users ? $model_Users = new User() : '';
     !$model_UsersProfile ? $model_UsersProfile = new UserProfile() : '';
     $model_UsersProfile->uid = $model->uid;
     //         echo $error;
     //         exit;
     //         ZCommonFun::print_r_debug($result);
     $model_SurveyOperation = new SurveyOperation();
     $models_SurveyOperation = $model_SurveyOperation->getIsTop();
     return $this->render('step2answer3', ['models_SurveyOperation' => $models_SurveyOperation, 'data' => $data, 'model' => $model, 'error' => $error, 'posts' => $posts, 'image' => Survey::getImageUrl($model), 'model_Users' => $model_Users, 'model_UsersProfile' => $model_UsersProfile, 'randSurvey' => $this->getRandSurvey()]);
     //         return $this->render('step2answer',[
     //             'data'=>$data,
     //             'model'=>$model,
     //             'error'=>$error,
     //             'posts'=>$posts,
     //             'image'=>Survey::getImageUrl($model),
     //             'model_Users'=>$model_Users,
     //             'model_UsersProfile'=>$model_UsersProfile,
     //         ]);
 }
Beispiel #6
0
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use common\models\User;
use common\z\ZCommonFun;
/* @var $model common\models\User */
?>
<div class="survey-form">

    <?php 
$form = ActiveForm::begin();
?>
    <?php 
echo $form->field($model, 'user')->textInput(['maxlength' => true]);
?>
    <?php 
echo $form->field($model, 'pass')->textInput(['maxlength' => true]);
?>
    <div class="form-group">
        <button type="submit" class="btn btn-success">注册</button>
    </div>
    <div class="form-group">
        <?php 
ZCommonFun::print_r_debug($model->errors);
?>
    </div>
    <?php 
ActiveForm::end();
?>

</div>