群晖中安装PHPEMS 6.1在线模拟考试系统

群晖中安装PHPEMS 6.1在线模拟考试系统


前言

群晖通过Web Station可以很轻松的发布自己的网站,建立博客,分享照片等,这里介绍如何使用Web Station搭建PHPEMS在线考试系统。


一、PHPEMS是什么?

PHPEMS系统,是一个开源的中文在线考试系统,该系统基于PHP进行开发,是一款集在线考试、视频播放等功能,上手操作简单的国产精品系统。

二、安装步骤

1.群晖中安装相关软件

(1)Web Station
(2)Apache HTTP Server 2.2
(3)PHP 7.0 (PHPEMS支持7.0>=PHP>=5.4)
(4)phpMyAdmin
(5)MariaDB 5(PHPEMS不支持MariaDB 10)

2.在Web Station中配置PHP

在这里插入图片描述
由于PHPEMS使用PDO链接数据库,这里不设置好无法链接数据库。
由于PHPEMS使用PDO访问数据库,这里不设置好将无法访问数据库。

后面登陆后台管理无法显示验证码,同样需要在PHP设置中勾选gd扩展的支持。

3.PHPems下载与安装

官方网站提供了最新版本的下载地址。
下载后在解压的文件夹的help目录中有《PHPems在线考试系统使用手册》的文档,根据此文档的步骤安装即可,需要注意的是,对于群晖系统来说,服务器根目录直接就是web目录(安装完Web Station后会自动生成)。

三、补充问题

1. 试题库无法导出

由于群晖中PHP设置中,默认没有勾选iconv扩展模块,而导出试题库的脚本中使用到了iconv函数进行字符转换,从而导致出错,解决方法,就是在php设置中勾上iconv。

2. 在答题时,工具栏没有公式编辑按钮

原因:在js中的编辑框初始化中的工具栏设置里没有添加Mathjax工具。
解决:修改files/public/js/pe.app.js,在function initEditor()函数中的toolbar里的insert后面的items:中添加“Mathjax”

{ name: 'insert', items: [ 'CodeSnippet', 'Image', 'Mathjax', 'ckeditor_wiris_formulaEditor', 'ckeditor_wiris_formulaEditorChemistry', 'Table', 'HorizontalRule', 'SpecialChar'] },

3. 教师在阅卷时,不显示公式

原因:header.tpl中没有加渲染公式的MathJax.js。
解决:修改app/exam/tpls/teach/header.tpl,即

 <script src="files/public/js/ckeditor/ckeditor.js"></script> //其后添加
    <script src="files/public/js/ckeditor/js/MathJax.js?config=TeX-AMS_HTML"></script> //增加此行

4. 手机端答题,不显示公式

原因:header.tpl中没有加渲染公式的MathJax.js。
解决:修改app/exam/tpls/phone/header.tpl,即

 <script src="files/public/js/ckeditor/js/MathJax.js?config=TeX-AMS_HTML"></script>//增加此行
    <script src="files/public/js/pe.mobile.js"></script>

5.手机端强化强化训练时,任何题型的答题界面都是4个选项

原因:判断题型的语句有问题 解决:参考电脑端的代码app/exam/tpls/app/exercise_paper.tpl修改app/exam/tpls/phone/exercise_paper.tpl。

<li class="unstyled">
  <div class="rows">
      <p>{x2;realhtml:v:question['questionselect']}</p>
  </div>
  </li>

前加

  {x2;if:!$questype[v:question['questiontype']]['questsort'] && $questype[v:question['questiontype']]['questchoice'] != 5}

后加

{x2;endif}

将接下来的

{x2;if:$questype['questsort']}

改为

{x2;if:$questype[v:quest]['questsort']}

6.主观题批改时,题目不显示公式

原因:users_decide.tpl中标题项输出格式问题。 解决:参考标准答案的输出方式,将

<td>标题:</td>
    <td>{x2;eval: echo strip_tags(html_entity_decode(v:question['question']))}</td>

改为:

<td>标题:</td>
    <td>{x2;realhtml:v:question['question']}</td>

7.课件上传大小限制在20.5MB

原因:与课程相关的模板代码在app\course\tpls中,其\app\course\tpls\master和\app\course\tpls\teach目录中,分别用于管理员和教师管理课程。在header.tpl中引用了files/public/js/pe.master.js,而在pe.master.js文件中指定的上传文件大小为20480000,因此上传文件大小被限制在了20.5MB。 解决:修改files/public/js/pe.master.js文件,在function inituploader()中,var maxsize = ‘20480000’;设置了上传文件的大小限制,可更改该值来改变上传大小的限制。

8.浏览器窗口宽度变窄后,水平滚动条无法刷出隐藏的登录及导航栏

问题:当浏览器窗口大小变化时,主要是宽度变窄时,导航栏的内容不能全部显示,此时拖动底部的滚动条,右侧显示空白,无法显示隐藏的内p容。 原因:追踪代码发现调用了\files\public\css\pe.less,在该文件中指定了网页的样式。其中topbar-box和nav的宽度设置为固定值1400p,而其对应的父元素topbar和header中未指定宽度,即采用默认的百分比(100%),也就是实际的窗口宽度。当窗口宽度变窄时,topbar-box和nav的宽度将大于其父元素的宽度,根据topbar和header中关于溢出内容设置为隐藏,因此就看不到其余的导航栏内容了。同时底部的滚动条时针对content的,topbar和header的宽度始终等于浏览器的实际宽度,因此,拖动滚动条也无法显示隐藏的内容。 解决:改变其父元素的最小宽度,使其最小宽度也为1400p即可。修改如下:

.topbar{
    &{
         min-width: @pgwidth;  //增加此行,其中@pgwidth设置为1400px,在文件开始出已设置
	 height: 40px;
	 background-color: #4f4f4f;
	 border-bottom: 1px solid #4f4f4f;
	 overflow: hidden;
         clear: both;
    }
    ......
 
.header{
    &{
         min-width: @pgwidth; //增加此行
	 height: 75px;
	 background-color: @headerbgcolor;
	 color: #3c3c3c;
	 border-bottom: 1px solid @bgcolor;
	 clear: none;
	 overflow: hidden;
    }
    ......

9.教师上传的课件无法播放

问题:管理员上传的课件能正常播放,而教师上传的课件无法播放 原因:教师上传课件的模板缺少一行代码,没有将课件的类型记录下来,在提交时发生了错误,因此无法将课件的类型及路径写入数据库。 解决:修改\app\course\tpls\teach\content_add.tpl文件

<input type="hidden" name="submit" value="1">
<input type="hidden" name="args[coursemoduleid]" value="{x2;$moduleid}"> //增加此行
<input type="hidden" name="args[coursecsid]" value="{x2;$courseid}">
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值