如何比较数组值以检查正确答案

问题描述 投票:0回答:1

我正在开发测验应用程序,因此用户具有MCQ,并且在提交测验时,我需要显示结果。

这里是mysql数据库中的answers表。类似地,有一个[[questions表,其ID和问题列分别包含问题ID和问题。enter image description here

所以我正在从这样的模型中查询数据库,这将返回一个关联数组:

$testQuery = $this->db->query("SELECT quiz_id, correct_option FROM answers"); if ($testQuery->num_rows() > 0) { return $testQuery->result_array(); }

[这里,我正在控制器中打印数组,在执行foreach时看起来像这样:

$allCorrectOptions = $this->DataModel->readCorrectOptions(); $asize = sizeof($allCorrectOptions); for($i = 0; $i < $asize; $i++){ echo "<pre>"; var_dump($allCorrectOptions[$i]); echo "</pre>"; }

以上代码段的

结果

array(2) { ["quiz_id"]=> string(2) "13" ["correct_option"]=> string(13) "Maruti suzuki" } array(2) { ["quiz_id"]=> string(2) "14" ["correct_option"]=> string(6) "Kotlin" } array(2) { ["quiz_id"]=> string(2) "15" ["correct_option"]=> string(4) "BOSS" }
在视图中,有无线电输入标签,并且name属性包含一个以

quiz_id

为键的数组(名称),因此,当用户提交测试时,我这样做是为了获得quiz_id和选定的值。 >$nums = $this->input->post('allques'); foreach ($nums as $key => $value) { echo "<br>" . $key . "==" . $value; }
以上代码段的

结果

13==Maruti suzuki 14==MongoDB 15==Ubuntu Linux
因此,我想做的是,获得与上面的代码片段结果相似的db查询的数组结果,这样我就可以借助类似如下的循环将quiz_id和correct_option与用户提交的值进行比较:if quiz_id.this ==提交的quiz_id && correct_option.this ==提交的值,然后是correct_answers ++。之后显示结果

如果这种检查方法无效,那么还有其他方法可以正确地进行检查。

我正在开发测验应用程序,因此用户拥有MCQ,并且在提交测验时,我需要显示结果。这是mysql数据库中的答案表。同样,有一个问题表,它具有...

php mysql arrays codeigniter
1个回答
0
投票
我已经弄清楚了,可以这样做。
© www.soinside.com 2019 - 2024. All rights reserved.