public function create() { $survey_code = $_GET['code']; $sv_type = $_GET['type']; $sv_type_sub = $_GET['typesub']; $user_code = cookie('user_code'); // 先判断是否有调查编码参数 if ($survey_code) { // 有调查编码转入修改模式 $survey = surveyInfoFind($survey_code); // 查询调查基本信息 if ($survey) { if ($survey[survey_state] > 1) { // 已发布调查直接转到调查分析页面 $url = U('survey/analyse') . '?code=' . $survey_code . '#svContent'; redirect($url); } else { // 用户权限判断 if ($user_code == $survey['user_code']) { // 取调查问题相关信息 $question = questionInfoSelect($survey_code); $option = optionInfoSelect($survey_code); cookie('survey_code', $survey_code, 3600); $this->assign('survey', $survey); $this->assign('question', $question); $this->assign('option', $option); } else { $this->error('您不是该调查创建者没有权限修改该调查', '__ROOT__'); } } } else { // 查不到调查编码对应的信息重新转入到新建调查页面 redirect(U()); } } else { // 无调查编码转入创建模式 cookie('survey_code', null); } $survey_type = M(TB_DET_SURVEY_TYPE)->select(); $survey_class = M(TB_DET_SURVEY_CLASS)->select(); $province = M(TB_DET_AREA_PROVINCE)->select(); $career = M(TB_DET_USER_CAREER)->select(); $edu = M(TB_DET_USER_EDU)->select(); $level = M(TB_DET_USER_LEVEL)->select(); $this->assign('survey_code', $survey_code); $this->assign('sv_type', $sv_type); $this->assign('sv_type_sub', $sv_type_sub); $this->assign('survey_type', $survey_type); $this->assign('survey_class', $survey_class); $this->assign('province', $province); $this->assign('career', $career); $this->assign('edu', $edu); $this->assign('level', $level); $this->display(); }
function surveyInfoSelect($survey_code, $url) { $survey['info'] = M(TB_BAS_SURVEY_INFO)->where("survey_code = '{$survey_code}'")->find(); if ($survey['info']) { // $survey['info']['survey_desc'] = str_replace("\n", "<br/>", $survey['info']['survey_desc']) ; // 调查说明输出前换行符转换 $survey['url']['url_user'] = U('user/user/visit') . '?code=' . $survey['info']['user_code']; // 调查创建者访问地址 $survey['url']['url_create'] = U('survey/survey/create') . '?code=' . $survey['info']['survey_code']; // 调查参与地址 $survey['url']['url_visit'] = U('survey/survey/visit') . '?code=' . $survey['info']['survey_code']; // 调查参与地址 $survey['url']['url_answer'] = U('survey/survey/answer') . '?code=' . $survey['info']['survey_code']; // 调查参与地址 $survey['url']['url_analyse'] = U('survey/survey/analyse') . '?code=' . $survey['info']['survey_code']; // 调查分析地址 $survey['stats']['answer_count'] = M(TB_BAS_SURVEY_ACTION)->where("survey_code = '{$survey_code}'")->count(); // 参与统计 $survey['stats']['follow_count'] = M(TB_BAS_USER_FOLLOW_SURVEY)->where("follow_code = '{$survey_code}'")->count(); // 收藏统计 $survey['stats']['share_count'] = M(TB_BAS_USER_SHARE_SURVEY)->where("share_code = '{$survey_code}'")->count(); // 分享统计 $option = optionInfoSelect($survey_code); $question = M(TB_BAS_QUESTION_INFO)->where("survey_code = '{$survey_code}'")->order('question_code')->select(); // 自定义推荐规则查询 if ($survey['info']['recomm_type'] == 2) { $survey['recommend'] = M(TB_BAS_SURVEY_RECOMMEND_RULE)->where("survey_code = '{$survey_code}'")->select(); } for ($q = 0; $q < count($question); $q++) { $survey['question'][$q] = $question[$q]; if ($question[$q]['question_type'] != 'textarea') { for ($o = 0, $i = 0; $o < count($option); $o++) { if ($question[$q]['question_code'] == $option[$o]['question_code']) { $survey['question'][$q]['option'][$i] = arrayExtract($option[$o], array('option_code', 'option_name', 'option_seq', 'option_type')); $i++; } } } } return $survey; } else { return false; } }