PHP 和 MySQL 基于时间的测验应用程序

标签 php mysql sql database

我正在使用 PHP 和 MySQL 开发一个基于时间的测验项目,并存储结果,如下表所示。

表格:得分

sid |Question_ID|answer |is_correct|User_ID|score|score_calculated|time_taken
1   |10         |Manager|Y         |  1    |200  |  0             |3.2
2   |10         |Emp    |N         |  2    |200  |  0             |2.4
3   |10         |Manager|Y         |  3    |200  |  0             |6.5
4   |10         |Other  |N         |  4    |200  |  0             |8.3
5   |11         |Yellow |N         |  1    |300  |  0             |2.3
5   |11         |green  |N         |  2    |300  |  0             |5.8
6   |11         |Red    |Y         |  3    |300  |  0             |6.4
7   |11         |Red    |Y         |  4    |300  |  0             |9.1

分数列包含每个问题的分数

分数计算基于:

  • 正确答案所用最短时间 = 100%
  • 正确答案使用的第二个最短时间 = 75%
  • 正确答案使用的第三个最短时间 = 50%
  • 其他正确答案 = 25%
  • 其他错误答案 = 0

需要在 **“score_calculated”** 字段上更新上述计算值。 任何人都可以建议一个查询或方法来解决评分过程吗?

最佳答案

解决您的问题的最佳方法是 Mysql 触发器。 在每次提交答案时(插入后),您可以调用触发器。

关于PHP 和 MySQL 基于时间的测验应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17475401/

相关文章:

php - SQL like 语句问题

mysql - 是否可以简化此 SQL UNION 查询?

php - Laravel 重定向::withInput()

php - mysql 中的 store_result() 和 get_result() 返回 false

php - 如何在生成 PDF 时将 Google map (或其他 GIS map )输出嵌入到 PDF 中?

php - MYSQL select * 再次加一列

java - 没有主键为 INT 的 SQL 删除

PHP jQuery 根据选定的组合框显示数据

php - 什么是 mysql 链接标识符,它的重要性是什么?

mysql - SQL SELECT DISTINCT 不起作用