微信小程序 考试业务数据结构设计

【微信小程序】问卷调查/答题类小程序实现 版权声明:个人原创,转载请注明出处 最近暂时不用忍受学业压力,可以干一些自己想干的事情,由于接的小程序的锅太多,决定好好学习一下小程序,本次主要学习了答题问卷小程序的制作,涉及到题目切换、答案上传以及简单的完成情况判断等场景,本次设计特点是题库与页面分离。 界面设置 首页 答题页面1 答题界面2 功能描述 在主页中点击对应的按钮进入对应的答题页面。 答题界面包括题目、选项、上...... 阅读详情

效果

这里写图片描述

分析

其实这个乍一看还是有难度的,很复杂,说复杂的主要原因是在数据结构的设计上,可以提取出以下几个需求:

  • 点击【上一题】 时,如果是第一题,需要提示当前是第一题
  • 点击【下一题】 时,如果是第最后一题,需要提示不可再往下了
  • 【交卷】按钮在最后一题显示,点击时,把之前所有的答案传给服务器,如果有题目没有回答,还要给出提示,题目全部有答案后,才能提交服务器。
  • 学生答题时,可以点击【上一题】,这时候,已经回答过的题目,答案要记住,并且UI界面上要有勾选。

数据结构

"DATA":{
            "EXAMS":Array[3],
            "SCORE":"3",
            "SUBJECTCOUNT":"3"
        }
  • EXAMS:表示题目
  • SCORE:总分
  • SUBJECTCOUNT:题目数量

具体的情况来看看EXAMS:

"EXAMS":[
                {
                    "RN":"1",
                    "EXAMNID":"533",
                    "EXAMNAME":"周瑜姓什么",
                    "EXAMTYPES":"单选题",
                    "FIGURES":"1",
                    "RIGHTANSWER":"A",
                    "OPTIONA":"周",
                    "OPTIONB":"瑜",
                    "OPTIONC":"",
                    "OPTIOND":"",
                    "OPTIONE":"",
                    "OPTIONF":""
                },
                {
                    "RN":"2",
                    "EXAMNID":"534",
                    "EXAMNAME":"周瑜的老婆叫什么",
                    "EXAMTYPES":"多选题",
                    "FIGURES":"1",
                    "RIGHTANSWER":"A,C",
                    "OPTIONA":"小乔",
                    "OPTIONB":"大乔",
                    "OPTIONC":"大桥未久",
                    "OPTIOND":"黄月英",
                    "OPTIONE":"",
                    "OPTIONF":""
                },
                {
                    "RN":"3",
                    "EXAMNID":"535",
                    "EXAMNAME":"周瑜是男人?",
                    "EXAMTYPES":"是非题",
                    "FIGURES":"1",
                    "RIGHTANSWER":"A",
                    "OPTIONA":"对",
                    "OPTIONB":"错",
                    "OPTIONC":"",
                    "OPTIOND":"",
                    "OPTIONE":"",
                    "OPTIONF":""
                }
            ],
  • EXAMNAME :题目名称
  • EXAMTYPES:单选题或多选题或是非题(ps:个人建议数据中使用整型来记录,如0代表单选,1代表多选2代表是非题)
  • RIGHTANSWER:正确答案
  • OPTIONA~OPTIONF:选项 A~F

代码实现

单选题 wxml:
因为每个选项都设计了字段,所以,每个选项都得写进去:

<template name="singleSelectionTemplate">

    <text class='single-selection-title'>{{currentQueenNumber}}. ({{EXAMTYPES}}){{EXAMNAME}}</text>
    <radio-group class="single-radio-group" bindchange="singleRadioChange">

        <label wx:if="{{OPTIONA != ''}}">A、
            <radio value="{{'A'}}" checked="{{ANSWERA}}" />{{OPTIONA}}</label>
        <label wx:if="{{OPTIONB != ''}}">B、
            <radio value="{{'B'}}" checked="{{ANSWERB}}" />{{OPTIONB}}</label>
        <label wx:if="{{OPTIONC != ''}}">C、
            <radio value="{{'C'}}" checked="{{ANSWERC}}" />{{OPTIONC}}</label>
        <label wx:if="{{OPTIOND != ''}}">D、
            <radio value="{{'D'}}" checked="{{ANSWERD}}" />{{OPTIOND}}</label>
        <label wx:if="{{OPTIONE != ''}}">E、
            <radio value="{{'E'}}" checked="{{ANSWERE}}" />{{OPTIONE}}</label>
        <label wx:if="{{OPTIONF != ''}}">F、
            <radio value="{{'F'}}" checked="{{ANSWERF}}" />{{OPTIONF}}</label>

    </radio-group>

</template>

单选题 wxss

.single-selection-title {
    font-size: 30rpx;
    font-weight: 700;
}

.single-radio-group {
    display: flex;
    flex-direction: column;
}

.single-radio-group label {
    font-size: 30rpx;
    padding-top: 20rpx;
    padding-bottom: 20rpx;
}

多选题和是否题和上面类似,就不赘述。

<import src="single-selection-template/single-selection-template.wxml" />
<import src="multiple-selection-template/multiple-selection-template.wxml" />
<import src="yes-or-no-selection-template/yes-or-no-selection-template.wxml" />

<view class='container'>

    <view class='tip'>
        <text decode="{{true}}">欢迎&lt;{{loader}}&gt;进入考试系统 试题总共{{examsData.SUBJECTCOUNT ? examsData.SUBJECTCOUNT : '0'}}题 试题总分{{examsData.SCORE ?examsData.SCORE :'0' }}分</text>
    </view>

    <view class='subject'>

            <block wx:if="{{currentExam.EXAMTYPES == '单选题'}}">
                <template is="singleSelectionTemplate" data = "{{...currentExam}}"/>
            </block>

            <block wx:elif="{{currentExam.EXAMTYPES == '多选题'}}">
                <template is="multipleSelectionTemplate" data = "{{...currentExam}}"/>
            </block>

            <block wx:elif="{{currentExam.EXAMTYPES == '是非题'}}">
                <template is="yesOrNoSelectionTemplate" data = "{{...currentExam}}" />
            </block>

    </view>


    <view class='action'>
        <text class='action-former' bindtap='action_former'>上一题</text>
        <text class='action-latter' bindtap='action_latter'>下一题</text>
    </view>

    <view wx:if='{{isCommitBtnShown}}' class='action_submit'>
        <text bindtap='action_submit'>交卷</text>
    </view>
</view>

利用template将单选多选是否题都单独封装起来用。

完整代码请上 exam。

微信小程序调查问卷 首先我做的这个是评教系统中调查问卷页面并实现该功能&lt;view class='header'&gt;被评教师:{{teachername}}&lt;/view&gt; &lt;swiper bindchange='swiper_change' current='{{currentid}}'&gt; &lt;block class="center" wx:for="{{paperdetails}... 阅读详情

相关推荐

基于微信小程序的答题考试系统设计与实现全解析

微信小程序凭借免安装、零学习成本等特点,成为轻量级在线考试场景的理想载体。本文从前后端分离架构出发,结合Spring Boot与MySQL构建数据持久层,系统讲解答题考试系统的核心原理:基于时间戳的倒计时方案、随机抽题算法保证试卷公平性、自动判分与即时反馈机制,以及答题卡与进度条等交互设计。这类技术方案在模拟测验、每日答题、资格认证练习等场景中具有显著价值,既解决了传统考试系统部署复杂的痛点,又兼顾了用户体验与数据安全。文章围绕题库管理、试卷生成、在线作答、成绩回传等关键链路,完整拆解了从设计选型到真机调试

weixin_35899324的博客 262

微信小程序实现答题样式2(记录答案选项)

之前写过一篇博客记录了微信小程序如何实现答题样式,有一些朋友看完后想要知道选中答案后是怎么记录答案的,在这里简单处理一下逻辑,记录一下选中的答案,上篇地址如下:https://blog.youkuaiyun.com/u013982652/article/details/88121647。

aaa123aaasqw的博客 910

基于微信小程序云开发的在线答题考试系统设计与实现

在线答题与考试系统是企业培训、学校考核和知识竞赛中常见的数字化工具。传统前后端分离架构需要服务器、数据库和域名备案,部署成本高且维护复杂。而微信小程序云开发以云函数、云数据库和免鉴权登录为核心,将服务端逻辑与前端页面无缝整合,大幅降低开发门槛。题库数据存储在云端文档型数据库中,通过云函数动态抽题、服务端判分,既能保证题目安全,又支持单选、多选、判断等多种题型。考生作答记录、成绩统计与错题回顾均可实时落库,便于后续多维分析。从模拟考试到正式考核,微信小程序的即用即走特性让系统分发更便捷,配合云开发弹性扩缩容能

weixin_33913332的博客 342

微信小程序实现调查问卷表单

微信小程序问卷调查表单 功能演示: 20220408_202155 index.wxml <view id="container-top"> <view id="container-img"> <swiper indicator-dots="true" autoplay="true" interval="3000" indicator-active-col

weixin_48747169的博客 4435

Unity获取透明物体深度数据

Unity获取透明物体深度数据前言透明&景深需求模型透明度部分带透明通道图片/视频部分半透明模型获取深度的具体实现方法带透明度图片/视频获取深度的具体实现方法结束语 前言 最近在做的项目有很多奇怪的需求,甚至之前在unity里用插件写了一个类似于蓝图的行为树插件,之后有时间给大家讲一讲相关的实现方法,今天刚解决了unity里透明物体无法获得深度数据的问题。所以分享给大家。 透明&景...

可以吃的妙脆角的博客 2630

VOS3000线路对接、路由配置与路由分析操作教程

通过本教程,你应该已经掌握了VOS3000的线路对接、路由配置和路由分析的基本操作。添加备用路由:为常用前缀添加备用路由,确保在主路由失效时呼叫仍能正常进行。进入线路管理:点击“系统管理” -> “线路管理” -> “添加线路”。查看日志:在“系统日志”中查看路由选择情况,确保路由配置正确。失败原因:查看失败呼叫的原因(如“无应答”、“线路忙”等)。线路选择:选择之前添加的线路(如“供应商A”)。保存并启用:填写完毕后,点击“保存”并启用路由。路由名称:自定义一个名称(如“路由A”)。

AI_wx_3307623172的博客 2970

微信小程序实现答题样式3(记录得分)

首先在上一篇的基础上新增了一个正确答案以及对应的分数,具体的结构如下: data: { quest: [{ id: 1, type: 1, //类型,1.单选,2.多选 question: "1.C语言是面向对象程序设计语言?", answers: [{ index: 'A', content: '是' }, { index: 'B', content: '不是'

nice哥的博客 3319

GEE|基于时间序列特征的山东省玉米随机森林分类代码

主题思路: 本实验为二分类实验,分类目标包括:玉米、其他(建筑、水体、水稻、 裸地、森林、小麦、道路、大蒜等),采用人工设计的特征指数的时间序列特征为分类依据,选取分类器为:随机森林分类器,并选取样本集中 70%作为训练样本,30%作为测试样本,通过调整随机森林棵数,调整分类器结构。选取以下参数进行分类: ⚫ 时间尺度:1990 年 4 月 15 日 - 1990 年 9 月 30 日 ⚫ 空间尺度:山东省 ⚫ 影像融合时间间隔:16天 ⚫ 特征值选择:['nir','ndvi'...

weixin_46493028的博客 7466

微信小程序Python在线考试刷题系统

在开发过程中,采用了模块化开发的思想,将各个功能模块进行拆分和封装,提高了代码的可维护性和可扩展性。基于微信小程序的考试刷题系统,可以为考生提供一站式的刷题服务,包括题库管理、章节练习、模拟考试等功能,极大地提升了备考的便捷性和效率。安全测试主要测试系统的安全性,包括用户认证、数据加密等方面。通过需求分析、系统设计和系统实现等阶段的努力,我们成功地构建了一个功能完善、性能稳定、安全可靠的考试刷题系统。在未来的工作中,我们将继续对系统进行优化和改进,增加更多的刷题功能和题型,提高系统的智能化水平和用户体验。

豆包程序员 919

[Ethernet in CANoe]2--如何在CANoe中去仿真CP版本的SOME/IP通信

上篇文章()介绍了SOME/IP的两种类型的数据格式,根据作者目前的项目经验,目前在CANoe V18之前的版本,CP版本的arxml是最方便实现SOME/IP以太网仿真的。作者目前只有CANoe V17的license,所以本片文章是在CANoe 17上基于CP版本的arxml去做仿真模拟。

汽车ECU自动化测试 1764

TransUnet官方代码训练自己数据集(彩色RGB3通道图像的分割)

官方代码:https://github.com/Beckschen/TransUNet 目的:训练5个类别的汽车部件分割任务(测试在另一篇博客中) 实现效果: 1. github下载代码,并解压。 项目里的文件可能跟你下载的不一样,不急后面会讲到! 2. 配置数据集(尽最大努力还原官方数据集的格式)。 通常自己手上的数据集分images和labels文件夹,分别存放着原始图像和对应的mask图像,如下图所示; mask图像中的像素有0,1,2,3,4 分别代表背景,车身,轮子,车灯,窗户,一共五个

qq_37652891的博客 5万+

基于微信小程序实现考试系统【内附项目源码+论文说明】

摘要:本文设计并实现了一个基于Java和微信小程序的在线考试系统。系统采用SSM框架和MySQL数据库,包含管理员和用户两大模块。管理员可进行用户管理、考试资料管理、试题管理等功能;用户可实现注册登录、在线考试等操作。系统具有界面友好、操作简便的特点,有效解决了传统考试管理效率低、易出错的问题,实现了考试管理的数字化和规范化。开发过程中运用了微信开发者工具和JSP技术,保证了系统的稳定性和安全性。该系统的应用显著提高了考试管理效率,为无纸化考试提供了实用解决方案。 关键词:微信小程序;考试系统;SSM框架;

ybigbear的博客 844

下载猫 —— 会员体系安全分析与加固方案

下载猫的会员验证体系完全失效,破解不需要任何工具链、不需要写代码、不需要改文件。已验证的成功攻击路径:攻击者启动软件时加一个参数,然后用 3 行 JavaScript 即可将会员状态改为"有效期至 2099 年",全部功能闸门放行。等价于普通用户按F12打开控制台输入 3 行代码,全程不到 10 秒。项目结论破解难度⭐ 极低(会按 F12 即可,无需任何破解工具)是否修改文件否(重启软件自动恢复)是否需要服务器否是否影响其他用户单人即可完成,可复制分发修复所需工作量。

猫敷雪 41

基于JAVA的SSM+VUE微信小程序在线考试系统(毕业设计源码+论文)

本文设计并实现了一个基于微信小程序的在线考试系统,采用SpringBoot+MySQL技术栈开发。系统分为用户端和管理员端:用户端提供课程学习、在线测试、试题练习、论坛交流等功能;管理员端实现用户管理、课程管理、试题管理等功能。系统通过微信小程序实现便捷访问,利用SpringBoot框架简化开发流程,MySQL数据库确保数据安全存储。经测试,系统运行稳定,操作简便,能满足现代教育场景下的在线考试需求,具有较高的实用价值和应用前景。

经历过大厂、小厂风风雨雨的程序佬 1344

零基础做AI漫剧:Kimi K2.5写本 + Flux生图 + Seedance 2.0动效的保姆级教程

很多零基础小伙伴想做AI漫剧,却被“写剧本、画分镜、做动效”三大难题劝退——不会写剧情、不会画插画、不会做动态,觉得门槛太高。其实不用慌!今天就给大家带来保姆级教程,全程用Kimi K2.5(写剧本)、Flux(生分镜图)、Seedance 2.0(做动效)三个工具,不用专业技能,不用手动绘画,零基础也能在1小时内做出1分钟完整AI漫剧,全程步骤拆解、示例齐全,跟着做就能出片!

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 3032

把 SAP GUI 做成可维护的应用:Module Pool 基础与 Table Control 深入实战

SAP Module Pool 与 Table Control 开发要点 摘要:Module Pool 作为 SAP GUI 交互的核心技术,由程序、屏幕(Dynpro)和流逻辑(Flow Logic)组成,通过 PBO/PAI 事件驱动数据流。Table Control 是其中处理多行数据的核心控件,其开发关键在于: 正确理解 PBO/PAI 数据流机制 掌握 CXTAB_CONTROL 结构的关键属性(LINES、TOP_LINE 等) 合理设置列控制属性(CXTAB_COLUMN) 采用 LOOP W

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 239

微信小程序的课程在线答疑学习答题考试系统

注:实际开发需根据需求调整技术方案,例如高并发场景可引入消息队列(RabbitMQ)削峰填谷。

java python定制开发 593

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

基于微信小程序实现考试系统【附项目源码+论文说明】

本文介绍了一个基于Java和微信小程序的在线考试系统开发项目。系统采用SSM框架和MySQL数据库构建后台,微信开发者工具开发前端小程序。主要功能包括用户管理、考试资料管理、试卷管理、在线考试等模块,实现了考试管理的数字化和无纸化操作。系统设计遵循有效性、高可靠性、安全性和先进性原则,通过模块化设计提高了管理效率,简化了传统人工考试管理流程。研究背景表明,在信息化时代背景下,开发此类系统对提高教育管理效率具有重要意义。系统界面友好,操作简便,为学校和教育机构提供了一套完整的在线考试解决方案。

螺旋翻转大大雄 350

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

微信小程序的班级学习考试系统 93fez

本微信小程序的电子数据取证知识测试系统的设计旨在提升用户查阅信息的效率以及管理人员管理信息的效能。它能够快速存储并检索大量数据,充分满足了学生、教师和管理员三方的需求。系统操作简便直观,各模块功能经过精心分析并优化,界面设计也力求友好,旨在为用户提供更优质的微信小程序使用体验。通过对比系统需实现的功能与用户实际需求,我们发现用户能够在其权限范围内在线进行信息的添加、修改、查看和删除等操作,这不仅极大地满足了用户需求,还有效节省了时间。

QQ_188083800的博客 666

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

【毕业设计】基于微信小程序的驾校考试系统(驾考小程序)_学车 小程序 方案

这份文档从构建一个键值数据库的关键架构入手,不仅带你建立起全局观,还帮你迅速抓住核心主线。除此之外,还会具体讲解数据结构、线程模型、网络框架、持久化、主从同步和切片集群等,帮你搞懂底层原理。相信这对于所有层次的Redis使用者都是一份非常完美的教程了。你的支持,我的动力;祝各位前程似锦,offer不断!!!本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取。

2401_84688516的博客 1101

微信小程序 uniapp+vue个人计划在线考试系统-备考系统app-

后端开发:基于Spring Boot/flask/django/Thinkphp-Laravel框架和Java语言实现后端服务,处理业务逻辑和数据库交互。(1) Spring Boot/flask/django/Thinkphp-Laravel:作为后端开发框架,实现API接口、用户管理等。小程序框架uni-app:使用Vue.js开发跨平台应用的前端框架,编写一套代码,可编译到Android、小程序等平台。系统测试(功能测试):对系统进行全面功能测试,验证模块功能,确保系统稳定运行。

懒人的博客 738

springboot-vue3在线练习考试系统 原生微信小程序开发的毕业设计

数据库使用mysql,开发者数据库管理工具使用Navicat for MySQL同时也给我提供了一次实际模拟锻炼的机会,使我在设计一套完整的软件系统的步骤、方法、及思路上有了一个全新的认识和体会,能够使我更深入的了解软件设计和开发,整合自己以前所学的知识。。技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。招代理,同行供货,量大从优。

QQ_402205496的博客 1997

【课程设计】基于微信小程序音乐播放器的设计与实现毕业设计源码271156

登录页面, 搜索, 歌曲播放页面, 歌词滚动 ,播放进度条, 拖动跳转进度条, 上下一曲,暂停,单曲、顺序、随机播放, 我的喜欢, 最近播放

高级程序源的博客 9346

Java springboot基于微信小程序的驾校考试预约系统(源码+文档+运行视频+讲解视频)

本文介绍了一个基于Java SpringBoot与微信小程序的驾校考试预约系统,旨在解决传统人工预约模式效率低、信息不透明等问题。系统采用SpringBoot框架搭建后端,结合MySQL数据库保障数据安全;前端使用微信小程序实现轻量化操作,降低用户使用门槛。核心功能包括用户管理、考试预约、场次管理等,经测试可缩短预约周期50%,减少人工成本30%。文章详细展示了系统架构、技术栈(含Vue、MyBatisPlus)、功能测试用例及代码片段,并提供了小程序开发流程说明。该系统为驾校数字化管理提供了高效解决方案,

weixin_mrw479640的博客 1135

微信小程序Python面试刷题网站考试系统功能全

后端开发:基于Spring Boot/flask/django/Thinkphp-Laravel框架和Java语言实现后端服务,处理业务逻辑和数据库交互。(1) Spring Boot/flask/django/Thinkphp-Laravel:作为后端开发框架,实现API接口、用户管理等。1.Spring Boot-ssm (Java):基于 Spring Boot/ssm 构建后端服务,处理业务逻辑,管理数据库操作等。功能设计:依据需求分析,设计小程序端和电脑pc端功能,确定模块交互流程。

2501_91488339的博客 731
上一篇: 在线ps,修改证件照背景色
下一篇: 阿里云免费ssl证书(PFX格式证书)安装
She_lock
博客等级 码龄12年 157粉丝 134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值