注意:

phpems的模板后缀名为tpl,如果要修改模板页,在某个模块下的tpls目录中,而不是data里面 data中有html和compile目录

如新增试题url:http://localhost/phpems/index.php?exam-master-questions-addquestion&page=

那模板页就是:phpems\app\exam\tpls\master\question_add.tpl

app文件目录下,是我们程序的主要部分,每个文件夹是一个应用,其中core文件夹和user文件夹是核心部分,不可删除。其他文件夹可以删除,基本互相不影响。

我们以exam文件夹为例介绍应用结构

先从.php文件开始,每个*.php文件属于该应用的一个入口,app.php为默认入口,我们通过下面的网址可以访问这个入口

http://localhost/index.php?应用名-php文件名,如果php文件名不写的话,则默认app,例如:index.php?exam-teach指向的就是teach.php,而index.php?exam则指向的是app.php

以app.php为例,我们看下代码:

此处必须以app为名命名类

__construct为该类的初始化函数,在该函数里做程序初始化的准备,如初始化某些对象等。

每个公用方法都可以通过URL访问到,如index.php?exam-app-index,被访问的就是index方法了,在这个方法里可以写相关的功能,当没有Index参数时,如index.php?exam-app,程序会自动寻找Index方法并运行之,如果访问的方法不存在,则都定向到index方法上,如果Index方法不存在,程序将出错。

如login方法,可以同过index.php?exam-app-login即可访问到。

接下来介绍每个文件夹

cls //应用的类库

config和lang是用来保存一些设置和语言文件的,目前不起用

styles //主题文件夹,下面包括css、images、js三个文件夹,分别保存不同的样式、JS和图片文件。

tpls //模板文件夹,对于应用下不同文件要建立不同的文件夹,在对应文件夹下保存模板。如app.php文件对应的模板是tpls/app文件夹,master.php对应的是tpls/master文件夹。

教师导出成绩流程:

app\exam\teach.php

case 'outscore': //导出成绩

$rs = $this->favor->getAllExamHistoryByArgs($args,array('ehuserid','ehexam','ehusername','ehscore','ehstarttime'));//ehstarttime 开始考试时间

phpems 修改模板_phpems二次开发流程分析相关推荐

  1. phpems 修改模板_phpems二次开发手册

    phpems的模板后缀名为tpl,如果要修改模板页,在某个模块下的tpls目录中,而不是data里面 data中有html和compile目录 如新增试题url:http://localhost/ph ...

  2. phpems 修改模板_PHPEMS在线模拟考试系统(含CMS模块) v1.1 测试版

    2013-10-24(1.1beta先行版,正式版将在11月1日发布)更改功能: 1.重新换回考试页为默认首页,CMS作为辅助功能可选 2.更换注册登录模板 3.支持用户CSV文件导入 4.支持普通试 ...

  3. phpems 修改模板_PHPEMS基本模版标签介绍

    phpems使用了模板编译技术.编译后的文件保存在data目录下. phpems模板标签以{x2;.....}的形式出现. 变量 1.{x2;$var} 该标签会被翻译为<?php echo 变 ...

  4. 小京东等产品后台版权及logo修改教程[ecshop二次开发]

    小京东等产品后台版权及logo修改教程[ecshop二次开发] ECSHOP模板/ecshop开发中心(www.68ecshop.com) / 2015-09-08 1.后台登录页面 Logo以及背景 ...

  5. 利用时间修改工具进行二次开发

    利用时间修改工具进行VISSIM二次开发 1.VISSIM430时间修改工具 相信大家在使用VISSIM430的过程中对其登录时间的限制不胜其烦,它需要你下一次登录在上一次登录之后.可是,正常人谁会详 ...

  6. 项目总结25:海康威视SDK-Java二次开发-客流量分析

    项目总结25:海康威视SDK-Java二次开发-客流量分析 前言 本来一个很简单的SDK接口对接,折腾了好久:总结下原因有: 海康的SDK底层使用C++写的,我不熟悉C++: 海康Java源码示例写的 ...

  7. java二次开发流程,源码修改流程(Hadoop)

    1.困难 在实际业务场景中,目前现有的框架在很大情况下可能不能满足现有的需求,用代码进行二次开发就是最好的选择.在一开始进行的时候,根本无从下手是一方面,因为源码的量特别大,如果是在官方的源码中,基本 ...

  8. Exynos4412 中断驱动开发(二)—— 中断处理流程分析

    前面已经学习了中断的注册过程,下面由一张流程图来看一下当中断发生时的处理流程: 中断发生之后处理流程 a -- 具体的CPU architecture相关模块进行现场保护,然后调用machine dr ...

  9. 后处理编辑修改_Abaqus Python二次开发:内核脚本的快捷编辑方式

    用户在Abaqus/CAE中进行各类操作时,后台程序会实时将操作指令记录在当前工作目录下的Abaqus.rpy文件中.另外,当每次对CAE模型进行保存时,文件保存目录下均会自动保存一个与模型名称同名的 ...

最新文章

  1. Ruby系统中的AJAX开发技术简析
  2. 2019年顶级软件开发趋势
  3. 2021年人工神经网络第一次作业要求
  4. ML之Hog_HammingDistance:基于Hog特征提取“RGB”图像的768个值的单向vector利用汉明距离算法进行判别
  5. 征战蓝桥 —— 2016年第七届 —— C/C++A组第3题——方格填数
  6. Windows系统优化12个默认设置
  7. 【SSH高速进阶】——struts2简单的实例
  8. P4146 序列终结者 平衡树 + lazy维护
  9. php最新图片漏洞,2018最新PHP漏洞利用技巧
  10. html5 防止脚本攻击,shell防ddos攻击脚本(二)
  11. 老李谈HTTP1.1的长连接
  12. 【OpenCV 例程200篇】77. OpenCV 实现快速傅里叶变换
  13. 格力又有新专利了:“一种铁芯冲片、电机及新能源汽车”
  14. 告诉你一个 AtomicInteger 的惊天大秘密!
  15. VS Tips (Basic part)
  16. IDM的Google商店插件
  17. 电商行业用户画像分析案例
  18. css 控制自动换行,问题:css 自动换行;结果:CSS控制文本自动换行
  19. shell提示Algorithm negotiation fail
  20. snapper命令技巧

热门文章

  1. 【Vue】基础系列(五)列表渲染v-for | key的原理 | 数组 | 对象 | 删除替换 | 过滤与排序
  2. Python(九)类和对象
  3. IntelliJ IDEA解决maven依赖包冲突
  4. Linux 常用命令与教程
  5. 大众集团「下注」本地化
  6. 斯坦福大学神经网络_斯坦福大学欺骗专家和网络安全首席执行官解释了为什么人们迷上网络骗局
  7. ant java delete_ant 入门教程
  8. (zz)[分享]配置CPU温度.风扇转速,硬盘温度监控(附加Athlon/Duron系统安全度夏指南)...
  9. 一文看透指令集、微架构、CPU
  10. 牛客SQL29:某宝店铺连续2天及以上购物的用户及其对应的天数(连续问题)