【问题标题】:In PHP/CodeIgniter how do you calculate Class & Form Rank based on grades for a student?在 PHP/CodeIgniter 中,如何根据学生的成绩计算班级和表格排名?
【发布时间】:2009-11-18 15:28:11
【问题描述】:

我有一个数据库表,其中包含学生的以下成绩信息:

学生卡 主题ID 平均绩点 letter_grade(根据gpa计算,保存记录时插入) 学期 6 518 95 A+ 1 6 534 100 A+ 1

然后,我会根据成绩计算期末报告。我使用gpa 来计算应用的学分和总体 GPA。基于这个整体 GPA,我想计算学生在班级和整体形式(年级)的排名。如果不先将这个排名保存到数据库中,我该如何做到这一点?另外,这可以从 CodeIgniter 的视图中完成吗?如果是这样,最好的方法是什么?

【问题讨论】:

  • 你能发布一些示例数据吗?
  • ...“视图”是什么意思 - 数据库视图或 CodeIgniter 中的视图?
  • 发布了示例数据,是的,该视图是 Code Igniter 视图

标签: php codeigniter ranking


【解决方案1】:
  1. 这可以在 Code Igniter 中完成吗? 是的,您应该可以。

  2. 这应该在视图中完成吗? 不,您不应该在视图中进行计算。创建一个模型来处理成绩时,创建一个课程并将其引入。您的视图应该只用于呈现您的用户界面。

【讨论】:

    【解决方案2】:

    当您从 MySQL 获取数据时,我建议您在模型中执行此操作。这样一来,您的数据就已全部分类并准备好在您取回时使用。

    查看http://rpbouman.blogspot.com/2009/09/mysql-another-ranking-trick.html,了解在 SQL 查询中对数据进行排名的方法。

    【讨论】:

      【解决方案3】:

      我不建议在视图中计算任何内容。

      我建议如果您使用 codeigniter 来搭配 MVC 框架,那么可能有一个模型来代表您所描述的功能,以及一个控制器来将该模型和您的视图拉到一起。

      我还建议使用 video tutorial on codeigniter 来很好地了解框架和编码 MVC 应用程序。

      【讨论】:

        【解决方案4】:
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-20
        • 2015-02-21
        • 2016-07-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多