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

下载本文档

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

文档简介

1、沈阳航空航天大学课课 程程 设设 计计 报报 告告课程设计名称:软件综合课程设计软件综合课程设计课程设计题目:基于基于 webweb 的在线问卷调查的在线问卷调查系统的设计与实现系统的设计与实现院(系):计算机学院专 业:计算机科学与技术班 级:学 号:2姓 名:指导教师:说明:结论(优秀、良好、中等、及格、不及格说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;作为相关教环节考核必要依据;格式不符合要求格式不符合要求;数据不实数据不实,不予通过。报告和电子数据必须作为实验现象重复的关键不予通过。报告和电子数据必须作为实验现象重复的关键依据依据.沈阳航空航天大学课程设计报

2、告 学术诚信声明本人声明本人声明:所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。尽我所知,除了文中特别或撰写过的研究结果,也不包含其它教育机构使用过的材料。与我一同工作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意.报告资料及实验数据若有不实之处,本人愿意接受本教学环节“不及格”和“重修或重做”的评分结论并承担相关一切后果。 本人签名: 日期: 年 月 日沈阳航空航天大学课程设计报告 I 沈阳航空航天大学沈阳航空航天大学课课程程设设计计任任务务书书课程设计名称软软件件综综合合课课程程设设计计专业计计算算机机科科学学与与技技术术学生姓

3、名班级学号题目名称基于 web 的在线问卷调查系统的设计与实现起止日期2016年 12月 19日起至2017年1月 13日止课设内容和要求:在校园、企事业单位里,由于各种调查研究的需要,经常会有各种各样的调查问卷,在传统模式下,人们不但要花费不少的费用印刷问卷,而且还要消耗大量时间和精力对调查问卷进行发放和回收,对调查问卷进行统计,并且人工操作调查问卷随意性较大,容易产生遗漏等问题。本系统建立在信息技术基础上,构建一个在线的问卷设计、分发、调查、回收、统计的系统,基本解决传统问卷的上述老大难问题。1. 实现用户管理系统,注册用户可以发布、编辑问卷;非注册用户只可以填写问卷。2. 实现问卷发布管

4、理系统,可以对问卷进行增加,修改,删除,查询等操作.3. 实现数据可视化,对问卷统计结果通过图表进行展示。4. 界面美观,用户交互、体验良好。参考资料:麦克劳克林。 PHP MySQL 实战手册第二版M。 中国电力出版社, 2014。杨克李强, 裴云, 黄向党。 PHP 和 MySQL Web 开发从新手到高手M. 人民邮电出版社, 2013。教教研研室室审审核核意意见见: 教教研研室室主主任任签签字字:指导教师(签名)指导教师(签名)2016年12月16日沈阳航空航天大学课程设计报告 II 学学 生(签名)生(签名)2016年12月19日沈阳航空航天大学课程设计报告 III 课程设计总结:课

5、程设计总结:本次课程设计的主要任务是在线问卷系统.此实现了问卷创建,编辑,用户管理,问卷信息统计等功能,使用 PHP 语言的 laravel 框架,Mysql 数据库。在这次课程设计中,使我懂得了理论与实际相结合是很重要的,只有知识是远不够的,只有把所学理论知与实践相结合起来从中得出识是远不够的, 只有把所学理论知与实践相结合起来从中得出才能真正为社会服务,从而提高自己的实际动手力和独立思考. 才能真正为社会服务,从而提高自己的实际动手力和独立思考.才能真正为社会服务,从而提高自己的实际动手力和独立思考。才能真正为社会服务,从而提高自己的实际动手力和独立思考。系统中存在的一些不足和设计上存在的

6、缺憾,说明自己这些方面还有很多不足之处有待自己进一步学习、提高。在这次课程设计中,我学到很多东西真正达与用合,增强了对数据库方面应用的理解自己今后参与开发系统积累不少经验,在课程设计过中从建立数据开始对库理念及思想上有更高的认识。从书本上知运用到实际动手操作来,收获颇多我真正学了计算机教科书上所没有或者真正用到了课本的知识.这样,既巩固旧又掌握了新知识。不仅提高自己的动手能力,更体会到软件开发乐趣加深入的了解数据库实际应用,为我们将来践打下良好的基础.在课设期间,与同学之间的相互探讨对我有很大的启发。让我对有关知识有了更加深入的理解,也增强了我解决困难,克服困难的勇气和决心。这次课设的感悟对我

7、日后的学习和工作有了很大的促进作用。沈阳航空航天大学课程设计报告 IV 目目 录录1 需求分析 11。1 系统开发背景 11.2 系统开发目的 11.3 系统开发意义 22 概要设计概要设计 32。1 总体设计 32.2 功能设计 32。2。1 用户系统设计 32。2。2 问卷系统设计 32。3 数据库设计 42。3 交互设计 63 详细设计详细设计 73。1 用户管理系统 73。1.1 用户注册 73.1。2 用户登录 93。2 问卷管理系统 93.2。1 问卷信息管理 93。2.2 题目信息管理 123.2。3 选项信息管理 143。2。4 问卷结果统计 173。2。5 问卷生成 183。

8、2。6 问卷提交 194 测试测试 204.1 出现的错误 204.2 解决方法 20参考文献参考文献 21沈阳航空航天大学课程设计报告 V 附附 录录(关键部分程序清单)关键部分程序清单)221。 路由文件 222。 用户管理后台文件 233。 问卷后台管理文件 274. 问卷生成文件 415。 登录界面 456. 注册页面 467。 问卷信息管理页面 478。 题目信息管理页面 509。 选项信息管理页面 5310. 选择题统计信息展示 5511. 简答题统计信息展示 5812。 错误页面 5913。 CSS 文件 6014。 JAVASCRIPT文件 76沈阳航空航天大学课程设计报告 0

9、 1 需求分析1。1 系统开发背景系统开发背景随着互联网技术的飞速发展,互联网的全球覆盖,交互功能等特性给调查方法带来新的变化,在线调查作为一种基于互联网平台上信息采集及处理方式,越来越受到许多评估研究机构和媒介机构的关注与运用。在校园、企事业单位里,由于各种调查研究的需要,经常会有各种各样的调查问卷,在传统模式下,人们不但要花费不少的费用印刷问卷,而且还要消耗大量时间和精力对调查问卷进行发放和回收,对调查问卷进行统计,并且人工操作调查问卷随意性较大,容易产生遗漏等问题。本系统建立在信息技术基础上,构建一个在线的问卷设计、分发、调查、回收、统计的系统,基本解决传统问卷的上述老大难问题.借助互联

10、网这一现代化的信息沟通渠道,在线调查具有低成本、高速度、跨越空间局限、丰富的表现形式、智能化及互动性等优点。因为其方便性,许多企业也在自己的网络上进行自主调研,使用调查的方式收集自己用户的观点等。不仅可以迅速了解社会不同层次、不同行业的人员需求,客观的收集需求信息,调整修正产品策略和营销策略,满足不同的需求.在线调查问卷系统是一个实用性很强的系统。1。2 系统开发目的系统开发目的在线问卷调差的目的就是能够提高调查效率,节约调查经费,使调查数据的分析更加的方便,应具有以下的功能特点:(1)向用户提交交互式,个性化的问卷调查服务。(2)智能的后台管理,可以在线生成调查问卷,可分析统计调查的结果.(

11、3)使用简单、方便,问卷生成,投放,结果分析简单易用.(4)具有灵活性,能应用不同的调查环境。沈阳航空航天大学课程设计报告 1 1。3 系统开发意义系统开发意义调查问卷系统的目的是企业、组织或个人需要调查或掌握一些数据、信息或资料时,为这样的需求者提供适合的网上问卷、回收、统计数据活动答案,为需求者掌握资料提供方便.(1)对调查问卷的统计结果进行分析汇总,并使需求者能及时了解最新的调查结果。(2)可以根据不同的需求灵活设计问卷。(3)支持多种题型,如单选、多选、简答等.沈阳航空航天大学课程设计报告 2 2 概要设计2。1 总体设计总体设计系统的总体设计可以分为以下几个部分:(1)使用 PHP

12、的 Laravel 框架实现系统的后台管理系统,包括问卷管理和用户管理。(2)使用 Mysql 作为数据库系统.(3)使用 JavasScript,Ajax 和 CSS 构建前端页面和交互系统。(4)使用 HighCharters 库实现数据可视化,实现问卷统计信息的图表展示。2.2 功能设计功能设计2。2.1 用户系统设计用户系统设计用户可分为注册用户和一般用户,注册用户需注册信息后方可使用系统,而一般用户可直接访问系统。3 种用户权限不同,具体如下:(1)系统管理员:管理系统和所有用户的问卷。(2)注册用户:设计、编辑、发布问卷,查看问卷统计结果.(3)一般用户:填写问卷。2.2.2 问卷

13、系统设计问卷系统设计注册用户可以访问问卷系统,并编辑问卷(增加,删除,修改,查询)与问卷对应的题目、选项。(1)问卷属性:问卷标题,发布者,发布时间,有效时间,提交量,题目。(2)题目属性:题号,题目,题目类型,选项。(3)选项属性:选项号,选项值。(4)题目类型:单选题、多选题、简答题。(5)问卷只有在有效时间内才可以参与答题,超出有效时间后不可进行答题。沈阳航空航天大学课程设计报告 3 2。3 数据库设计数据库设计数据库包含 5 个表,分别是:users(用户表),questionnaires(问卷表),subjects(题目表),options(选项表),short_answers(简答

14、表)。所有表的数据字典以及 E-R 图如下。问卷问卷题目题目选项选项简答简答拥有拥有1n拥有拥有拥有拥有11nn创建创建n用户用户1用户id用户id用户名用户名用户邮箱用户邮箱用户密码用户密码创建时间创建时间更新时间更新时间创建者创建者问卷id问卷id问卷标题问卷标题更新时间更新时间提交量提交量有效时间有效时间删除标识删除标识创建时间创建时间题目id题目id问卷id问卷id创建者创建者题号题号题目内容题目内容题目类型题目类型选项数选项数删除标识删除标识创建时间创建时间更新时间更新时间题目id题目id选项id选项id创建者创建者创建时间创建时间选项号选项号选项内容选项内容提交数提交数删除标识删除

15、标识更新时间更新时间创建时间创建时间回答id回答id题目id题目id回答内容回答内容删除标识删除标识更新时间更新时间用户组用户组图图 2.1 ER 图图沈阳航空航天大学课程设计报告 4 表表 2 2。1 1 用户表用户表users字段名称字段名称字段类型字段类型注释注释idint(10)用户标识,唯一,主键,自增namevarchar(255)用户名,唯一emailvarchar(255)用户邮箱passwordvarchar(60)用户密码groupint(11)用户组(管理员、注册用户)created_attimestamp创建时间updated_attimestamp更新时间表表 2.2

16、2.2 问卷表问卷表questionnaires字段名称字段名称字段类型字段类型注释注释idint(10)问卷标识,唯一,主键,自增user_namevarchar(255)创建者titletext问卷标题countsint(11)问卷提交量active_timeint(11)有效时间delete_tokenint(11)删除标识(0:未删除,1:已删除)created_attimestamp创建时间updated_attimestamp更新时间表表 2 2。3 3 题目表题目表subjects字段名称字段名称字段类型字段类型注释注释idint(10)题目标识,唯一,主键,自增question

17、naire_idint(11)题目对应的问卷标识(外键)user_namevarchar(255)创建者numberint(11)题号titletext题目内容typevarchar(255)题目类型(单选、多选、简答)option_countint(11)题目对应的选项数delete_tokenint(11)删除标识(0:未删除,1:已删除)created_attimestamp创建时间updated_attimestamp更新时间沈阳航空航天大学课程设计报告 5 表表 2 2。4 4 选项表选项表options字段名称字段名称字段类型字段类型注释注释idint(10)选项标识,唯一,主键,

18、自增subject_idint(11)选项对应的题目标识(外键)user_namevarchar(255)创建者numbervarchar(255)选项号titletext选项内容select_countint(11)选项被选择的次数delete_tokenint(11)删除标识(0:未删除,1:已删除)created_attimestamp创建时间updated_attimestamp更新时间表表 2 2。5 5 简答表简答表short_answers字段名称字段名称字段类型字段类型注释注释idint(10)回答标识,唯一,主键,自增subject_idint(11)回答对应的题目标识(外键

19、)answervarchar(255)回答内容delete_tokenint(11)删除标识(0:未删除,1:已删除)created_attimestamp创建时间updated_attimestamp更新时间2。3 交互设计交互设计使用 JavaScript,Ajax 等实现系统交互,实现对话框设计以及 UI 动画交互,使用 HighCharters 库实现数据可视化系统,对问卷统计结果进行图表展示。沈阳航空航天大学课程设计报告 6 3 详细设计3。1 用户管理系统用户管理系统3。1.1 用户注册用户注册本模块用于实现新用户的信息注册,在注册页面检查用户输入是否合法:(1)邮箱格式是否正确,

20、是否已被注册。(2)用户名是否和已注册用户重复.(3)两次密码输入是否一致。若用户输入合法,允许注册,并跳转至用户界面;否则,给出错误提示。此页面 URL 为:http:/localhost/auth/register(localhost 为系统域名,同下).用户注册页面 UI 与流程图如图 3。1 和图 3.2 所示。图图 3.1 用户注册页面用户注册页面沈阳航空航天大学课程设计报告 7 开始开始邮箱地址合法邮箱地址合法用户名不重复用户名不重复两次密码输入一致两次密码输入一致TT出错出错提交表单提交表单写入数据库,user表,写Session写入数据库,user表,写Session注册页面提

21、交的表单信息不为空注册页面提交的表单信息不为空TFF结束结束图图 3。2 用户注册流程图用户注册流程图开始开始输入正确输入正确出错出错输入用户名和密码输入用户名和密码结束结束写Session,进入系统写Session,进入系统TF进入问卷展示页面进入问卷展示页面存在Session存在SessionFT图图 3。3 用户登录流程图用户登录流程图沈阳航空航天大学课程设计报告 8 3.1.2 用户登录用户登录本模块用于实现用户登录,在用户输入正确的用户名和密码后,进入系统;否则,提示用户错误信息.此页面 URL 为:http:/localhost,若存在 Session,跳转至问卷展示页面。用户登录

22、流程图与页面 UI 如图 3.3 和图 3。4 所示。图图 3。4 用户登录界面用户登录界面3。2 问卷管理系统问卷管理系统3。2。1 问卷信息管理问卷信息管理本模块用于实现用户问卷信息的后台管理。具体的操作有:问卷信息展示、创建新问卷、更新问卷、删除问卷等操作.要展示的问卷信息有:(1)问卷 ID(系统内唯一,在创建问卷时由系统自动生成)。(2)问卷标题。(3)问卷创建者的用户名。(4)问卷的创建时间和有效时间(在有效时间内问卷可以答题).沈阳航空航天大学课程设计报告 9 (5)问卷的提交量.(6)查看问卷统计信息的链接.(7)查看问卷地址的链接。(8)编辑问卷内题目的链接。(9)问卷操作按

23、钮,包括问卷更新按钮和问卷删除按钮.此页面 URL 为:http:/localhost/userconsole/用户名,内为变量,是不同用户进入自己问卷管理页面的条件.更新问卷的 post 地址为:http:/localhost/userconsole/用户名/updatequestionnaire。删除问卷的 post 地址为:http:/localhost/userconsole/用户名/deletequestionnaire。问卷信息管理页面 UI 与流程图如图 3。5 和图 3。6 所示。图图 3。5 问卷信息展示页面问卷信息展示页面除此之外,还有一个添加问卷按钮.使用 JavaScr

24、ipt 捕获按钮点击消息,生成建立新问卷对话框,用户填写问卷标题与有效时间后可以创建新问卷。使用 Ajax与服务器交流将问卷信息写入数据库,做到平滑操作,改善用户体验。添加表单的 post 地址为:http:/localhost/userconsole/用户名/addquestionnaire创建新问卷流程图与页面 UI 如图 3。7 和图 3。8 所示.沈阳航空航天大学课程设计报告 10 开始开始存在Session,且Session用户名与URL中用户名一致存在Session,且Session用户名与URL中用户名一致联立users表与questionnaires表,找出questionna

25、ires表中此用户创建的delete_token为0的问卷信息联立users表与questionnaires表,找出questionnaires表中此用户创建的delete_token为0的问卷信息T以问卷id降序的顺序排列问卷信息以问卷id降序的顺序排列问卷信息输出信息输出信息结束结束输出错误信息输出错误信息F图图 3。6 问卷信息展示流程图问卷信息展示流程图开始开始填写信息不为空填写信息不为空添加按钮按下添加按钮按下结束结束生成对话框生成对话框填写问卷标题和有效时间填写问卷标题和有效时间写入数据库写入数据库TF图图 3。7 建立新问卷流程图建立新问卷流程图沈阳航空航天大学课程设计报告 11

26、 图图 3.8 建立新问卷页面建立新问卷页面3.2。2 题目信息管理题目信息管理本模块用于实现题目信息的后台管理.具体的操作有:题目信息展示、创建新题目、更新题目、删除题目等操作。要展示的题目信息有:(1)题号,用于展示问卷时的题目排序.(2)题目内容。(3)题型(单选题、多选题、简答题)。(4)编辑题目对应选项的链接(简答题除外).(5)题目操作按钮,包括题目更新按钮和题目删除按钮.此页面 URL 为:http:/localhost/userconsole/用户名/questionnaire/问卷 id。题目信息管理页面 UI 与流程图如图 3。9 和图 3.10 所示.沈阳航空航天大学课程

27、设计报告 12 图图 3。9 题目信息展示页面题目信息展示页面开始开始存在Session,且Session用户名与URL中用户名一致存在Session,且Session用户名与URL中用户名一致联立questionnaires表与subjects表,找出subjects表中此问卷id的delete_token为0的问卷信息联立questionnaires表与subjects表,找出subjects表中此问卷id的delete_token为0的问卷信息T以题目id降序的顺序排列问卷信息以题目id降序的顺序排列问卷信息输出信息输出信息结束结束输出错误信息输出错误信息问卷id是此用户创建问卷id是此

28、用户创建TF图图 3.10 题目信息展示流程图题目信息展示流程图除此之外,还有一个添加题目按钮。使用 JavaScript 捕获按钮点击消息,生成建立新题目对话框,用户通过下拉框选择题号与题型,输入题目后可以创建新题目,已有的题号不会出现在下拉框中,防止生成问卷的题号重复.使用 Ajax 与服务器交流将问卷信息写入数据库,做到平滑操作,改善用户体验。添加新题目页面 UI 与流程图如图 3。11 和图 3。12 所示。沈阳航空航天大学课程设计报告 13 图图 3。11 建立新题目页面建立新题目页面 开始开始填写信息不为空填写信息不为空添加按钮按下添加按钮按下结束结束生成对话框生成对话框选择题号、

29、题型,填写题目选择题号、题型,填写题目写入数据库写入数据库TF图图 3。12 建立新题目流程图建立新题目流程图 3。2。3 选项信息管理选项信息管理本模块用于实现选项信息的后台管理.具体的操作有:选项信息展示、创建新选项、更新选项、删除选项等操作.要展示的选项信息有:(1)选项号,用于展示题目时的选项排序。沈阳航空航天大学课程设计报告 14 (2)选项内容.(3)选项操作按钮,包括选项更新按钮和选项删除按钮。此页面 URL 为:http:/localhost/userconsole/用户名/subject/题目 id。选项信息管理页面 UI 与流程图如图 3.13 和图 3.14 所示。图图

30、3。13 选项信息管理页面选项信息管理页面开始开始存在Session,且Session用户名与URL中用户名一致存在Session,且Session用户名与URL中用户名一致联立subjects表与options表,找出options表中此问卷id的delete_token为0的问卷信息联立subjects表与options表,找出options表中此问卷id的delete_token为0的问卷信息T以选项id降序的顺序排列问卷信息以选项id降序的顺序排列问卷信息输出信息输出信息结束结束输出错误信息输出错误信息题目id是此用户创建题目id是此用户创建TF图图 3.14 选项信息管理流程图选项信

31、息管理流程图沈阳航空航天大学课程设计报告 15 除此之外,还有一个添加选项按钮。使用 JavaScript 捕获按钮点击消息,生成建立新选项对话框,用户通过下拉框选择选项号,输入选项内容后可以创建新选项,已有的选项号不会出现在下拉框中,防止生成问卷的题号重复。使用 Ajax 与服务器交流将问卷信息写入数据库,做到平滑操作,改善用户体验.添加新题目页面 UI 与流程图如图 3。15 和图 3。16 所示.图图 3。15 建立新选项页面建立新选项页面 开始开始填写信息不为空填写信息不为空添加按钮按下添加按钮按下结束结束生成对话框生成对话框选择选项号,填写选项选择选项号,填写选项写入数据库写入数据库

32、TF图图 3。16 建立新选项流程图建立新选项流程图沈阳航空航天大学课程设计报告 16 3.2。4 问卷结果统计问卷结果统计根据用户填写的问卷信息,统计选择题每一道选项的选项次数以及简答题的答案.同一道题目不同选项选择次数使用饼状图显示百分比.使用 HighCharte 库绘制饼状图。页面 URL 为:http:/localhost/userconsole/用户名/questionnaire/问卷id/result。页面 UI 如图 3。17 与图 3.18 所示.图图 3。17 问卷统计选择题展示页面问卷统计选择题展示页面沈阳航空航天大学课程设计报告 17 图图 3。18 问卷统计简答题展示

33、页面问卷统计简答题展示页面 3。2。5 问卷生成问卷生成根据用户创建的问卷、题目以及对应的选项信息,生成一个完整的问卷页面,页面 URL 为:http:/localhost/questionnaire/问卷 id.页面 UI 如图 3。19 所示。沈阳航空航天大学课程设计报告 18 图图 3。19 问卷页面问卷页面 3。2.6 问卷提交问卷提交在用户填写完问卷并提交之后,向用户反馈此问卷的统计信息。页面 UI 如图 3。20 所示沈阳航空航天大学课程设计报告 19 图图 3。20 反馈信息反馈信息 沈阳航空航天大学课程设计报告 20 4 测试4。1 出现的错误出现的错误1. 用户权限问题,导致

34、注册用户可以编辑其他用户创建的题目以及选项。2. 无法通过 Laravel 的 MVC 框架联立不同的数据库表格。3. 更新数据库时,导致多个行被错误修改。4.2 解决方法解决方法1. 在后台页面首先根据 URL 的用户名变量,判断变量与 Session 用户标识是否一致,若一致,转入编辑页面;不一致,转到错误页面。2. 外键与主键设置错误,修改即可。3. 错误使用 MVC 的 find 语句,修改成 where 语句即可。沈阳航空航天大学课程设计报告 21 参考文献1麦克劳克林。 PHP MySQL 实战手册-第二版M. 中国电力出版社, 2014。2杨克李强, 裴云, 黄向党。 PHP 和

35、 MySQL Web 开发从新手到高手M. 人民邮电出版社, 2013。3陈惠贞, 陈俊荣。 PHP MySQL 程序设计实例讲座M. 清华大学出版社, 2010。4孔潇。 PHP & MySQL 网站建设M。 国防工业出版社, 2001.5TimBoronczyk, MartinE。Psinas. PHP MySQL 范例精解:创建、修改、重用M。 清华大学出版社, 2009。6万川梅, 周建儒. PHP WEB 程序设计M。 西南交通大学出版社, 2014。7陆凯。 PHP 网站开发实用技术M. 人民邮电出版社, 2016.8传智播客高教产品研发部。 PHP 程序设计高级教程M。

36、中国铁道出版社, 2015。沈阳航空航天大学课程设计报告 22 附 录(关键部分程序清单)1. 路由文件路由文件?phpRoute::get(/, AuthAuthControllerindex);/身份验证Route::group(prefix = auth, namespace = Auth, function()Route:post(loginCheck, AuthControllerloginCheck);Route:get(register, AuthControllerregister);Route::post(registerCheck, AuthControllerregist

37、erCheck);Route:post(registerEmailCheck, AuthControllerregisterEmailCheck);Route:post(registerNameCheck, AuthControllerregisterNameCheck););/问卷展示页Route:group(prefix = questionnaire, namespace = Questionnaire, function()Route:get(questionnaireid, QuestionnaireControllerindex);Route:post(questionnairei

38、d/result, QuestionnaireControllerresult););/用户后台Route::group(prefix = userconsole, namespace = UserConsole, function()/展示用户的问卷Route:get(username, UserConsoleControllerindex);/增加问卷Route:post(username/addquestionnaire, UserConsoleControlleraddquestionnaire);/修改问卷Route:post(username/updatequestionnaire

39、, UserConsoleControllerupdatequestionnaire);/删除问卷Route:post(username/deletequestionnaire, UserConsoleControllerdeletequestionnaire);/展示问卷的题目Route::get(username/questionnaire/questionnaireid, UserConsoleControllerquestionnaire);沈阳航空航天大学课程设计报告 23 /提交结果统计Route:get(username/questionnaire/questionnaireid

40、/result, UserConsoleControllersubmitresult);Route::get(username/questionnaire/questionnaireid/result/subjectid, UserConsoleControlleranswerresult);/增加题目Route::post(username/questionnaire/questionnaireid/addsubject, UserConsoleControlleraddsubject);/修改题目Route:post(username/questionnaire/questionnaire

41、id/updatesubject, UserConsoleControllerupdatesubject);/删除题目Route:post(username/questionnaire/questionnaireid/deletesubject, UserConsoleControllerdeletesubject);/展示题目的选项Route::get(username/subject/subjectid, UserConsoleControllersubject);/增加选项Route:post(username/subject/subjectid/addoption, UserConso

42、leControlleraddoption);/修改选项Route::post(username/subject/subjectid/updateoption, UserConsoleControllerupdateoption);/删除选项Route:post(username/subject/subjectid/deleteoption, UserConsoleControllerdeleteoption););2. 用户管理后台文件用户管理后台文件?php namespace AppHttpControllersAuth;use AppHttpControllersController;

43、use IlluminateContractsAuthGuard;use IlluminateContractsAuthRegistrar;use IlluminateFoundationAuthAuthenticatesAndRegistersUsers;use AppUser;use Session;class AuthController extends Controller /沈阳航空航天大学课程设计报告 24 - Registration & Login Controller|-| This controller handles the registration of new

44、 users, as well as the authentication of existing users. By default, this controller uses a simple trait to add these behaviors。 Why dont you explore it?|/use AuthenticatesAndRegistersUsers;/* Create a new authentication controller instance. * param IlluminateContractsAuthGuard auth * param Illumina

45、teContractsAuthRegistrar registrar * return voidpublic function _construct(Guard auth, Registrar $registrar)thisauth = auth;thisregistrar = $registrar;$thismiddleware(guest, except = getLogout); / * 登陆页面展示 return Response /public function index()return view(auth。login);/* * 登录验证 * * return Response

46、*/沈阳航空航天大学课程设计报告 25 public function loginCheck()/ 处理表单:if ( (!empty(_POSTuser_nicename)) & (!empty(_POSTuser_pass)) )user_nicename = htmlspecialchars(stripslashes(trim(_POSTuser_nicename);user_pass = htmlspecialchars(stripslashes(trim(_POSTuser_pass));user_pass = md5(user_pass);/查找与用户名对应行user_in

47、fo = User::where(name, $user_nicename)first();/信息匹配if(user_info != NULL AND user_infopassword = user_pass)Session::put(auth_state, 1);Session:put(user_name, ”user_nicename);return ”1;/信息不匹配elsereturn ”0”;elsereturn 0;/* 注册界面 * return Response /public function register()return view(auth。register);沈阳航

48、空航天大学课程设计报告 26 /* 注册验证 * return Response /public function registerCheck()/ 处理表单:if ( (!empty(_POSTuser_nicename)) & (!empty($_POSTuser_pass) & (!empty($_POSTuser_email) )user_nicename = htmlspecialchars(stripslashes(trim($_POSTuser_nicename));user_pass = htmlspecialchars(stripslashes(trim($_

49、POSTuser_pass);user_pass = md5($user_pass);user_email = htmlspecialchars(stripslashes(trim(_POSTuser_email)));created_at = $updated_at = date(Ymd H:i:s);$userurl_id = User:insertGetId(array( name= $user_nicename,email= user_email,password= user_pass,created_at= created_at,updated_at= updated_at);Ses

50、sion::put(auth_state, 1);Session::put(user_name, ”user_nicename);/* * 注册验证邮箱 * return Response /public function registerEmailCheck()/ 处理表单:if ( !empty($_POSTuser_email) )/查找与用户名对应行$user_info = User::where(email, _POSTuser_email)first();沈阳航空航天大学课程设计报告 27 /邮箱信息存在if(user_info != NULL)return 1;elseretur

51、n ”0”;/* 注册验证用户名 * return Response */public function registerNameCheck()/ 处理表单:if ( !empty(_POSTuser_name) )/查找与用户名对应行user_info = User:where(name, _POSTuser_name)first();/用户信息存在if($user_info != NULL)return ”1”;elsereturn ”0”;3。 问卷后台管理文件问卷后台管理文件?php namespace AppHttpControllersUserConsole;use AppHttp

52、Requests;use AppHttpControllersController;沈阳航空航天大学课程设计报告 28 use AppUser;use AppQuestionnaire;use AppSubject;use AppOption;use AppShort_answer;use Session;use IlluminateHttpRequest;class UserConsoleController extends Controller /* 用户控制台 * return Response /public function index(userName)/登陆用户正确,显示用户控制

53、台if(Session::has(auth_state) & Session::get(user_name) = userName)/此用户所创建的所有问卷表user = User:where(name, $userName)first();QuestionnairesList = userhasManyQuestionnaire()where(delete_token, 0)orderBy(id,desc)get();return view(userconsole.index)-with(QuestionnairesList,QuestionnairesList);/显示错误信息el

54、sereturn view(errors。authority); / 添加问卷 * return Response /public function addquestionnaire($userName)/登陆用户正确,显示用户控制台if(Session:has(auth_state) & Session:get(user_name) = $userName)沈阳航空航天大学课程设计报告 29 /处理添加新选项的表单if ( (!empty(_POSTNewQuestionnaireTitle)) (!empty($_POSTNewQuestionnaireTime) )NewQues

55、tionnaireTitle = _POSTNewQuestionnaireTitle;NewQuestionnaireTime = _POSTNewQuestionnaireTime;/插入一行记录created_at = updated_at = date(Ym-d H:i:s);questionnaire = Questionnaire::insertGetId(array( user_name = userName,/问卷创建者title = $NewQuestionnaireTitle,/问卷标题active_time= $NewQuestionnaireTime,/有效时间dele

56、te_token= 0,/删除标记created_at= created_at,/创建时间updated_at = $updated_at)/更新时间);return ”success”;elsereturn ”inputnull;/显示错误信息return view(errors。authority); / 修改问卷 return Response /public function updatequestionnaire($userName)/登陆用户正确,显示用户控制台if(Session::has(auth_state) & Session::get(user_name) = $

57、userName)/处理添加新选项的表单if ( (!empty(_POSTUpdateQuestionnaireTitle)) & (!empty(_POSTUpdateQuestionnaireTime)) (!empty(_POSTQuestionnaireId) )UpdateQuestionnaireTitle = $_POSTUpdateQuestionnaireTitle;沈阳航空航天大学课程设计报告 30 UpdateQuestionnaireTime = _POSTUpdateQuestionnaireTime;QuestionnaireId = _POSTQuest

58、ionnaireId;/更新一行记录created_at = $updated_at = date(Ym-d H:i:s);$questionnaire = Questionnaire:where(id, QuestionnaireId)-update(array( title = $UpdateQuestionnaireTitle,/问卷标题active_time = UpdateQuestionnaireTime)/有效时间);return ”success”;elsereturn ”inputnull;/显示错误信息return view(errors.authority); / 删除问

59、卷 return Response */public function deletequestionnaire($userName)/登陆用户正确,显示用户控制台if(Session:has(auth_state) & Session::get(user_name) = userName)/处理添加新选项的表单if ( !empty($_POSTQuestionnaireId) )QuestionnaireId = _POSTQuestionnaireId;/更新一行记录$created_at = $updated_at = date(Y-m-d H:i:s);questionnair

60、e = Questionnaire:where(id, $QuestionnaireId)-update(array(delete_token= 1/删除标记);return ”success”;沈阳航空航天大学课程设计报告 31 elsereturn ”inputnull;/显示错误信息return view(errors。authority);/* 问卷编辑 return Response /public function questionnaire(userName, questionnaireId)/登陆用户正确,显示用户控制台if(Session::has(auth_state) & Session::get(user_name) = userName)/此问卷表所包

温馨提示

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

评论

0/150

提交评论