基于web的在线问卷调查系统的设计与实现资料整理_第1页
基于web的在线问卷调查系统的设计与实现资料整理_第2页
基于web的在线问卷调查系统的设计与实现资料整理_第3页
基于web的在线问卷调查系统的设计与实现资料整理_第4页
基于web的在线问卷调查系统的设计与实现资料整理_第5页
已阅读5页,还剩189页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

参考文献[1]麦克劳克林.PHP&MySQL实战手册-第二版[M].中国电力出版社,2014.[2]杨克李强,裴云,黄向党.PHP和MySQLWeb开发从新手到高手[M].人民邮电出版社,2013.[3]陈惠贞,陈俊荣.PHP&MySQL程序设计实例讲座[M].清华大学出版社,2010.[4]孔潇.PHP&MySQL网站建设[M].国防工业出版社,2001.[5]TimBoronczyk,MartinE.Psinas.PHP&MySQL范例精解:创建、修改、重用[M].清华大学出版社,2009.[6]万川梅,周建儒.PHPWEB程序设计[M].西南交通大学出版社,2014.[7]陆凯.PHP网站开发实用技术[M].人民邮电出版社,2016.[8]传智播客高教产品研发部.PHP程序设计高级教程[M].中国铁道出版社,2015.沈阳航空航天大学课程设计报告附录(关键部分程序清单)1.路由文件<?phpRoute::get('/','Auth\AuthController@index');// 身份验证Route::group(['prefix'=>'auth','namespace'=>'Auth'],function(){ Route::post('loginCheck','AuthController@loginCheck'); Route::get('register','AuthController@register'); Route::post('registerCheck','AuthController@registerCheck'); Route::post('registerEmailCheck','AuthController@registerEmailCheck'); Route::post('registerNameCheck','AuthController@registerNameCheck');});// 问卷展示页Route::group(['prefix'=>'questionnaire','namespace'=>'Questionnaire'],function(){ Route::get('{questionnaireid}','QuestionnaireController@index'); Route::post('{questionnaireid}/result','QuestionnaireController@result');});// 用户后台Route::group(['prefix'=>'userconsole','namespace'=>'UserConsole'],function(){ // 展示用户的问卷 Route::get('{username}','UserConsoleController@index'); // 增加问卷 Route::post('{username}/addquestionnaire','UserConsoleController@addquestionnaire'); // 修改问卷 Route::post('{username}/updatequestionnaire','UserConsoleController@updatequestionnaire'); // 删除问卷 Route::post('{username}/deletequestionnaire','UserConsoleController@deletequestionnaire'); // 展示问卷的题目 Route::get('{username}/questionnaire/{questionnaireid}','UserConsoleController@questionnaire'); // 提交结果统计 Route::get('{username}/questionnaire/{questionnaireid}/result','UserConsoleController@submitresult'); Route::get('{username}/questionnaire/{questionnaireid}/result/{subjectid}','UserConsoleController@answerresult'); // 增加题目 Route::post('{username}/questionnaire/{questionnaireid}/addsubject','UserConsoleController@addsubject'); // 修改题目 Route::post('{username}/questionnaire/{questionnaireid}/updatesubject','UserConsoleController@updatesubject'); // 删除题目 Route::post('{username}/questionnaire/{questionnaireid}/deletesubject','UserConsoleController@deletesubject'); // 展示题目的选项 Route::get('{username}/subject/{subjectid}','UserConsoleController@subject'); // 增加选项 Route::post('{username}/subject/{subjectid}/addoption','UserConsoleController@addoption'); // 修改选项 Route::post('{username}/subject/{subjectid}/updateoption','UserConsoleController@updateoption'); // 删除选项 Route::post('{username}/subject/{subjectid}/deleteoption','UserConsoleController@deleteoption');});2.用户管理后台文件<?phpnamespaceApp\Http\Controllers\Auth;useApp\Http\Controllers\Controller;useIlluminate\Contracts\Auth\Guard;useIlluminate\Contracts\Auth\Registrar;useIlluminate\Foundation\Auth\AuthenticatesAndRegistersUsers;useApp\User;useSession;classAuthControllerextendsController{ /* | |Registration&LoginController | | |Thiscontrollerhandlestheregistrationofnewusers,aswellasthe |authenticationofexistingusers.Bydefault,thiscontrolleruses |asimpletraittoaddthesebehaviors.Whydon'tyouexploreit? | */ useAuthenticatesAndRegistersUsers; /** *Createanewauthenticationcontrollerinstance. * *@param\Illuminate\Contracts\Auth\Guard$auth *@param\Illuminate\Contracts\Auth\Registrar$registrar *@returnvoid publicfunction__construct(Guard$auth,Registrar$registrar) { $this->auth=$auth; $this->registrar=$registrar; $this->middleware('guest',['except'=>'getLogout']); }*/ /** *登陆页面展示 * *@returnResponse */ publicfunctionindex() { returnview('auth.login'); } /** *登录验证 * *@returnResponse */ publicfunctionloginCheck() { //处理表单: if((!empty($_POST['user_nicename']))&&(!empty($_POST['user_pass']))) { $user_nicename=htmlspecialchars(stripslashes(trim($_POST['user_nicename']))); $user_pass=htmlspecialchars(stripslashes(trim($_POST['user_pass']))); $user_pass=md5($user_pass); // 查找与用户名对应行 $user_info=User::where('name',$user_nicename)->first(); // 信息匹配 if($user_info!=NULLAND$user_info->password==$user_pass) { Session::put('auth_state','1'); Session::put('user_name',"$user_nicename"); return"1"; } // 信息不匹配 else { return"0"; } } else { return"0"; } } /** *注册界面 * *@returnResponse */ publicfunctionregister() { returnview('auth.register'); } /** *注册验证 * *@returnResponse */ publicfunctionregisterCheck() { //处理表单: if((!empty($_POST['user_nicename']))&&(!empty($_POST['user_pass']))&&(!empty($_POST['user_email']))) { $user_nicename=htmlspecialchars(stripslashes(trim($_POST['user_nicename']))); $user_pass=htmlspecialchars(stripslashes(trim($_POST['user_pass']))); $user_pass=md5($user_pass); $user_email=htmlspecialchars(stripslashes(trim($_POST['user_email']))); $created_at=$updated_at=date('Y-m-dH:i:s'); $userurl_id=User::insertGetId( array('name' =>$user_nicename, 'email' =>$user_email, 'password' =>$user_pass, 'created_at' =>$created_at, 'updated_at' =>$updated_at) ); Session::put('auth_state','1'); Session::put('user_name',"$user_nicename"); } } /** *注册验证--邮箱 * *@returnResponse */ publicfunctionregisterEmailCheck() { //处理表单: if(!empty($_POST['user_email'])) { // 查找与用户名对应行 $user_info=User::where('email',$_POST['user_email'])->first(); // 邮箱信息存在 if($user_info!=NULL) { return"1"; } else { return"0"; } } } /** *注册验证--用户名 * *@returnResponse */ publicfunctionregisterNameCheck() { //处理表单: if(!empty($_POST['user_name'])) { // 查找与用户名对应行 $user_info=User::where('name',$_POST['user_name'])->first(); // 用户信息存在 if($user_info!=NULL) { return"1"; } else { return"0"; } } }}3.问卷后台管理文件<?phpnamespaceApp\Http\Controllers\UserConsole;useApp\Http\Requests;useApp\Http\Controllers\Controller;useApp\User;useApp\Questionnaire;useApp\Subject;useApp\Option;useApp\Short_answer;useSession;useIlluminate\Http\Request;classUserConsoleControllerextendsController{ /** *用户控制台 * *@returnResponse */ publicfunctionindex($userName) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此用户所创建的所有问卷表 $user=User::where('name',$userName)->first(); $QuestionnairesList=$user->hasManyQuestionnaire()->where('delete_token','0')->orderBy('id','desc')->get(); returnview('userconsole.index')->with('QuestionnairesList',$QuestionnairesList); } // 显示错误信息 else { returnview('errors.authority'); } } /*添加问卷 * *@returnResponse */ publicfunctionaddquestionnaire($userName) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 处理添加新选项的表单 if((!empty($_POST['NewQuestionnaireTitle']))&&(!empty($_POST['NewQuestionnaireTime']))) { $NewQuestionnaireTitle=$_POST['NewQuestionnaireTitle']; $NewQuestionnaireTime=$_POST['NewQuestionnaireTime']; // 插入一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $questionnaire=Questionnaire::insertGetId( array('user_name' =>$userName, // 问卷创建者 'title' =>$NewQuestionnaireTitle, // 问卷标题 'active_time' =>$NewQuestionnaireTime, // 有效时间 'delete_token' =>0, // 删除标记 'created_at' =>$created_at, // 创建时间 'updated_at'=>$updated_at) // 更新时间 ); return"success"; } else { return"inputnull"; } } // 显示错误信息 returnview('errors.authority'); } /*修改问卷 * *@returnResponse */ publicfunctionupdatequestionnaire($userName) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 处理添加新选项的表单 if((!empty($_POST['UpdateQuestionnaireTitle']))&&(!empty($_POST['UpdateQuestionnaireTime']))&&(!empty($_POST['QuestionnaireId']))) { $UpdateQuestionnaireTitle=$_POST['UpdateQuestionnaireTitle']; $UpdateQuestionnaireTime=$_POST['UpdateQuestionnaireTime']; $QuestionnaireId=$_POST['QuestionnaireId']; // 更新一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $questionnaire=Questionnaire::where('id',$QuestionnaireId)->update( array('title' =>$UpdateQuestionnaireTitle, // 问卷标题 'active_time'=>$UpdateQuestionnaireTime) // 有效时间 ); return"success"; } else { return"inputnull"; } } // 显示错误信息 returnview('errors.authority'); } /*删除问卷 * *@returnResponse */ publicfunctiondeletequestionnaire($userName) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 处理添加新选项的表单 if(!empty($_POST['QuestionnaireId'])) { $QuestionnaireId=$_POST['QuestionnaireId']; // 更新一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $questionnaire=Questionnaire::where('id',$QuestionnaireId)->update( array( 'delete_token' =>1 // 删除标记 ) ); return"success"; } else { return"inputnull"; } } // 显示错误信息 returnview('errors.authority'); } /////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** *问卷编辑 * *@returnResponse */ publicfunctionquestionnaire($userName,$questionnaireId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); // 此问卷表创建者与登录用户一致 if($Questionnaire->user_name==$userName) { $SubjectsList=$Questionnaire->hasManySubject()->where('delete_token','0')->orderBy('number')->get(); $AllNumber=array(); for($i=1;$i<100;$i++) { array_push($AllNumber,$i); } $SubjectNumbers=array(); foreach($SubjectsListas$Subject) { array_push($SubjectNumbers,$Subject->number); } $otherSubjectNumber=array_diff($AllNumber,$SubjectNumbers); returnview('userconsole.questionnaire')->with("SubjectsList",$SubjectsList) // 题目列表 ->with("QuestionnaireId",$questionnaireId) // 问卷ID ->with("QuestionnaireTitle",$Questionnaire->title) // 问卷标题 ->with("SubjectNumbers",$otherSubjectNumber); // 可用选项 } } // 显示错误信息 returnview('errors.authority'); } /*给指定问卷添加新题目 * *@returnResponse */ publicfunctionaddsubject($userName,$questionnaireId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); // 此题目创建者与登录用户一致 if($Questionnaire->user_name==$userName) { // 处理添加新选项的表单 if((!empty($_POST['NewSubjectNumber']))&&(!empty($_POST['NewSubjectType']))&&(!empty($_POST['NewSubjectTitle']))) { $NewSubjectNumber=$_POST['NewSubjectNumber']; $NewSubjectType=$_POST['NewSubjectType']; $NewSubjectTitle=$_POST['NewSubjectTitle']; // 插入一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $subject_id=Subject::insertGetId( array('questionnaire_id' =>$questionnaireId, // 问卷id 'user_name' =>$userName, // 问卷创建者 'number' =>$NewSubjectNumber, // 题号 'title' =>$NewSubjectTitle, // 题目 'type' =>$NewSubjectType, // 题目类型(单选,多选,简答) 'delete_token' =>0, // 删除标记 'created_at' =>$created_at, // 创建时间 'updated_at' =>$updated_at) // 更新时间 ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } /*修改指定题目的值 * *@returnResponse */ publicfunctionupdatesubject($userName,$questionnaireId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); // 此问卷表创建者与登录用户一致 if($Questionnaire->user_name==$userName) { // 处理添加新题目的表单 if((!empty($_POST['UpdateSubjectNumber']))&&(!empty($_POST['UpdateSubjectTitle']))&&(!empty($_POST['SubjectId']))) { $SubjectId=$_POST['SubjectId']; $UpdateSubjectNumber=$_POST['UpdateSubjectNumber']; $UpdateSubjectTitle=$_POST['UpdateSubjectTitle']; // 更新一行记录 $subject_id=Subject::where('id',$SubjectId)->update( array( 'number'=>$UpdateSubjectNumber, // 题号 'title' =>$UpdateSubjectTitle // 题目 ) ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } /*删除指定题目的值 * *@returnResponse */ publicfunctiondeletesubject($userName,$subjectId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$subjectId)->first(); // 此问卷表创建者与登录用户一致 if($Questionnaire->user_name==$userName) { // 处理删除题目的表单 if((!empty($_POST['SubjectId']))) { $SubjectId=$_POST['SubjectId']; // 更新一行记录,将删除标记置1 $subject_id=Subject::where('id',$SubjectId)->update( array( 'delete_token' =>1 // 删除标记 ) ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** *题目编辑 * *@returnResponse */ publicfunctionsubject($userName,$subjectId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此题目所包含的所有选项 $Subject=Subject::where('id',$subjectId)->first(); // 此题目创建者与登录用户一致 if($Subject->user_name==$userName) { $OptionsList=$Subject->hasManyOption()->where('delete_token','0')->orderBy('number')->get(); $Alphabet=array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"); $OptionNumber=array(); foreach($OptionsListas$Option) { array_push($OptionNumber,$Option->number); } $otherOptionNumber=array_diff($Alphabet,$OptionNumber); returnview('userconsole.subject')->with("OptionsList",$OptionsList) // 选项列表 ->with("QuestionnaireId",$Subject->questionnaire_id) // 问卷ID ->with("SubjectId",$subjectId) // 题目ID ->with("SubjectIdType",$Subject->type) // 题目类型 ->with("SubjectIdTitle",$Subject->title) // 题目内容 ->with("SubjectIdNumber",$Subject->number) // 题号 ->with("OptionsCount",$Subject->option_count) // 某选项已选次数 ->with("OptionNumbers",$otherOptionNumber); // 可用选项 } } // 显示错误信息 returnview('errors.authority'); } /*给指定题目添加新选项 * *@returnResponse */ publicfunctionaddoption($userName,$subjectId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此题目所包含的所有选项 $Subject=Subject::where('id',$subjectId)->first(); // 此题目创建者与登录用户一致 if($Subject->user_name==$userName) { // 处理添加新选项的表单 if((!empty($_POST['NewOptionNumber']))&&(!empty($_POST['NewOptionValue']))) { $NewOptionNumber=$_POST['NewOptionNumber']; $NewOptionValue=$_POST['NewOptionValue']; // 插入一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $option_id=Option::insertGetId( array('subject_id' =>$subjectId, // 题目id 'user_name' =>$userName, // 问卷创建者 'number' =>$NewOptionNumber, // 选项号(A、B、C、D...) 'title' =>$NewOptionValue, // 选项内容 'select_count' =>0, // 选择数目 'delete_token' =>0, // 删除标记 'created_at' =>$created_at, // 创建时间 'updated_at' =>$updated_at) // 更新时间 ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } /*修改指定项目的值 * *@returnResponse */ publicfunctionupdateoption($userName,$subjectId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此题目所包含的所有选项 $Subject=Subject::where('id',$subjectId)->first(); // 此题目创建者与登录用户一致 if($Subject->user_name==$userName) { // 处理添加新选项的表单 if((!empty($_POST['OptionId']))&&(!empty($_POST['UpdateOptionValue']))) { $OptionId=$_POST['OptionId']; $UpdateOptionValue=$_POST['UpdateOptionValue']; // 更新一行记录 $option_id=Option::where('id',$OptionId)->update( array( 'title' =>$UpdateOptionValue // 选项内容 ) ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } /*删除指定项目的值 * *@returnResponse */ publicfunctiondeleteoption($userName,$subjectId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此题目所包含的所有选项 $Subject=Subject::where('id',$subjectId)->first(); // 此题目创建者与登录用户一致 if($Subject->user_name==$userName) { // 处理删除选项的表单 if((!empty($_POST['OptionId']))) { $OptionId=$_POST['OptionId']; // 更新一行记录,将删除标记置1 $option_id=Option::where('id',$OptionId)->update( array( 'delete_token' =>1 // 删除标记 ) ); return"success"; } else { return"inputnull"; } } } // 显示错误信息 returnview('errors.authority'); } ///////////////////////////////////////////////////////////////////////////////////////////////////////////// /*提交结果统计选择 * *@returnResponse */ publicfunctionsubmitresult($userName,$questionnaireId) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); $QuestionnaireCount=$Questionnaire->counts; // 问卷提交量 $SubjectArray=array(); // 存储题目信息的数组 // 此问卷表创建者与登录用户一致 if($Questionnaire->user_name==$userName) { $SubjectsList=$Questionnaire->hasManySubject()->where('delete_token','0')->orderBy('number')->get(); $SubjectsArray=array(); foreach($SubjectsListas$OneSubject) { $Subject=array(); $Subject["id"]=$OneSubject->id; // 题目id $Subject["questionnaire_id"]=$OneSubject->questionnaire_id; // 问卷id $Subject["user_name"]=$OneSubject->user_name; // 问卷创建者 $Subject["number"]=$OneSubject->number; // 题号 $Subject["title"]=$OneSubject->title; // 题目 $Subject["type"]=$OneSubject->type; // 题目类型(单选,多选,简答) $Subject["option_count"]=$OneSubject->option_count; // 选项数目 $Subject["delete_token"]=$OneSubject->delete_token; // 删除标记 $Subject["options"]=array(""); // 题目的选项 // 本题对应的选项 $OptionArray=array(); if($OneSubject->type!="简答题") { $Subject["options"]=$OneSubject->hasManyOption()->where('delete_token','0')->orderBy('number')->get(); } array_push($SubjectsArray,$Subject); } returnview('userconsole.result')->with('Questionnaires',$Questionnaire) // 问卷基本信息 ->with('Subjects',$SubjectsArray); // 题目信息 } } // 显示错误信息 returnview('errors.authority'); } /*提交结果统计简答 * *@returnResponse */ publicfunctionanswerresult($userName,$questionnaireId,$subjectid) { // 登陆用户正确,显示用户控制台 if(Session::has('auth_state')&&Session::get('user_name')==$userName) { // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); $Subject=Subject::where('id',$subjectid)->first(); // 此问卷表创建者与登录用户一致 if($Questionnaire->user_name==$userName&&$Subject->type=="简答题") { $ShortAnswerList=Short_answer::where('subject_id',$subjectid)->where('delete_token','0')->orderBy('created_at')->get(); returnview('userconsole.answerresult')->with("Questionnaire",$Questionnaire) // 问卷信息 ->with("Subject",$Subject) // 题目信息 ->with("ShortAnswerList",$ShortAnswerList); // 答案信息 } } // 显示错误信息 returnview('errors.authority'); }}4.问卷生成文件<?phpnamespaceApp\Http\Controllers\Questionnaire;useApp\Http\Requests;useApp\Http\Controllers\Controller;useIlluminate\Http\Request;useApp\Questionnaire;useApp\Subject;useApp\Option;useApp\Short_answer;classQuestionnaireControllerextendsController{ /** *根据问卷id展示问卷 * *@returnResponse */ publicfunctionindex($questionnaireId) { // 问卷基本信息 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); $SubjectsArray=array(); //判断问卷是否包含题目 if(0!=$SubjectsIsNull=Subject::where('questionnaire_id',$questionnaireId)->count()) { // 题目列表,以题号排序 $SubjectsList=$Questionnaire->hasManySubject()->where('delete_token','0')->orderBy('number')->get(); // 打包题目与选项 foreach($SubjectsListas$OneSubject) { $Subject=array(); $Subject["id"]=$OneSubject->id; // 题目id $Subject["questionnaire_id"]=$OneSubject->questionnaire_id; // 问卷id $Subject["user_name"]=$OneSubject->user_name; // 问卷创建者 $Subject["number"]=$OneSubject->number; // 题号 $Subject["title"]=$OneSubject->title; // 题目 $Subject["type"]=$OneSubject->type; // 题目类型(单选,多选,简答) $Subject["option_count"]=$OneSubject->option_count; // 选项数目 $Subject["delete_token"]=$OneSubject->delete_token; // 删除标记 $Subject["options"]=array(""); // 题目的选项 // 本题对应的选项 $OptionArray=array(); if($OneSubject->type!="简答题") { $Subject["options"]=$OneSubject->hasManyOption()->where('delete_token','0')->orderBy('number')->get(); } array_push($SubjectsArray,$Subject); } } returnview('questionnaire.index')->with('Questionnaires',$Questionnaire) // 问卷基本信息 ->with('Subjects',$SubjectsArray); // 题目信息 } /** *问卷提交及投票结果展示 * *@returnResponse */ publicfunctionresult($questionnaireId) { // 处理添加新选项的表单 if(!empty($_POST['OptionIdArray'])) { $questionnaire_id=Questionnaire::where('id',$questionnaireId)->increment('counts'); $OptionIdArray=$_POST['OptionIdArray']; // 选项id数组(选项号) // 选项对应选择数+1 foreach($OptionIdArrayas$OptionId) { // 更新一行记录 $option_id=Option::where('id',$OptionId)->increment('select_count'); } } $AnswerTextArray=$_POST['AnswerTextArray']; // 简答题答案数组("题号,答案") foreach($AnswerTextArrayas$AnswerText) { if(trim($AnswerText[1])!="") // 提交的答案非空 { // 插入一行记录 $created_at=$updated_at=date('Y-m-dH:i:s'); $short_answerId=Short_answer::insertGetId( array('subject_id' =>$AnswerText[0], // 题目id 'anwaser' =>$AnswerText[1], // 回答 'delete_token' =>0, // 删除标记 'created_at' =>$created_at, // 创建时间 'updated_at'=>$updated_at) // 更新时间 ); } } // 此问卷表所包含的所有题目 $Questionnaire=Questionnaire::where('id',$questionnaireId)->first(); $QuestionnaireCount=$Questionnaire->counts; // 问卷提交量 $SubjectArray=array(); // 存储题目信息的数组 $SubjectsList=$Questionnaire->hasManySubject()->where('delete_token','0')->orderBy('number')->get(); $SubjectsArray=array(); foreach($SubjectsListas$OneSubject) { $Subject=array(); $Subject["id"]=$OneSubject->id; // 题目id $Subject["questionnaire_id"]=$OneSubject->questionnaire_id; // 问卷id $Subject["user_name"]=$OneSubject->user_name; // 问卷创建者 $Subject["number"]=$OneSubject->number; // 题号 $Subject["title"]=$OneSubject->title; // 题目 $Subject["type"]=$OneSubject->type; // 题目类型(单选,多选,简答) $Subject["option_count"]=$OneSubject->option_count; // 选项数目 $Subject["delete_token"]=$OneSubject->delete_token; // 删除标记 $Subject["options"]=array(""); // 题目的选项 // 本题对应的选项 $OptionArray=array(); if($OneSubject->type!="简答题") { $Subject["options"]=$OneSubject->hasManyOption()->where('delete_token','0')->orderBy('number')->get(); } array_push($SubjectsArray,$Subject); } returnview('questionnaire.result')->with('Questionnaires',$Questionnaire) // 问卷基本信息 ->with('Subjects',$SubjectsArray); // 题目信息 }}登录界面<!DOCTYPEhtml><htmllang="zh-CN"><head> <metacharset="utf-8"> <metahttp-equiv="X-UA-Compatible"content="IE=edge"> <metaname="viewport"content="width=device-width,initial-scale=1"> <title>请登录-问卷调差网</title> <linkrel="stylesheet"type="text/css"href="/css/header_footer.css"> <linkrel="stylesheet"type="text/css"href="/css/login.css"></head><body>@if(Session::has('auth_state')) <script> window.location.href='/userconsole/'+{{Session::get('user_name')}} </script>@endif<divid="adm_login"> <form> <pclass='error'>用户名或密码错误</p> <inputtype="hidden"id="_token"name="_token"value="{{csrf_token()}}"> <label> <inputtype="text"name="user_nicename"id="adm_usename"placeholder="用户名"class="txt_input"/> </label> <label> <inputtype="password"name="user_pass"id="adm_ps"placeholder="密码"class="txt_input"/> </label> <label> <buttontype="button"id="login_sub_but"class="sub_button">登录</button> </label> <p><ahref='/auth/register'class="reg_link">没有账号,注册一个<a/></p> </form></div> <scripttype="text/javascript"src="/js/jquery.min.js"></script> <scripttype="text/javascript"src="/js/login.js"></script></body></html>注册页面<!DOCTYPEhtml><htmllang="zh-CN"><head> <metacharset="utf-8"> <metahttp-equiv="X-UA-Compatible"content="IE=edge"> <metaname="viewport"content="width=device-width,initial-scale=1"> <title>加入我们-问卷调差网</title> <linkrel="stylesheet"type="text/css"href="/css/login.css"> <linkrel="stylesheet"type="text/css"href="/css/sweet-alert.css"></head><body><divid="adm_login"> <form> <inputtype="hidden"name="_token"id="_token"value="{{csrf_token()}}"> <label> <inputtype="text"name="user_email"placeholder="邮箱"class="txt_input"id='input_email'/> <pclass='error'id='err_emile'>邮箱地址不正确</p> <pclass='error'id='rep_emile'>此邮箱已被注册</p> </label> <label> <inputtype="password"name="user_pass"placeholder="密码"class="txt_input"id='input_pass'/> </label> <label> <inputtype="password"name="user_pass_rq"placeholder="确认密码"class="txt_input"id='input_pass_rq'/> <pclass='error'id='err_pass'>两次密码不一致</p> </label> <label> <inputtype="text"name="user_nicename"placeholder="用户名"class="txt_input"id='input_name'/> <pclass='error'id='err_usname'>用户名已存在</p> <pclass='error'id='req_usname'>用户名已存在</p> </label> <buttontype="button"id="register_sub_but"class="sub_button">注册</button> </label> <p><ahref='/'class="reg_link">已有账号,点此登陆<a/></p> </form> </div> <scripttype="text/javascript"src="/js/jquery.min.js"></script> <scripttype="text/javascript"src="/js/sweet-alert.min.js"></script>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论