Php 使用Laravel将用户的选择与数据库中的记录进行比较
我有4个单选按钮,用户可以选择其中的一个选项,我想检查该选项是否存在于表格问题中(该表格包含问题文本、I选项和正确答案),如果存在,我想增加表格测试中的字段点,并且为实现此目的,控制器包含:Php 使用Laravel将用户的选择与数据库中的记录进行比较,php,laravel,Php,Laravel,我有4个单选按钮,用户可以选择其中的一个选项,我想检查该选项是否存在于表格问题中(该表格包含问题文本、I选项和正确答案),如果存在,我想增加表格测试中的字段点,并且为实现此目的,控制器包含: $userChoise = $request->answer; $test = new Test; $questions = DB::table('question')->get(); foreach ($questions as $question) { if ($qu
$userChoise = $request->answer;
$test = new Test;
$questions = DB::table('question')->get();
foreach ($questions as $question) {
if ($question->correcte == $userChoise) {
$test->nbr_points = 10;
$test->save();
}else{
$test->nbr_points = 0;
$test->save();
}
}
问题在于,如果它仍然运行else处理,那么它没有考虑到该条件下的情况让我们稍微修改一下代码=)
这就是你要找的吗?什么是$gtest?包含哪些字段?你有什么关系吗?你需要给我们更多的细节来给你准确的答案answer@MohamedSabil83我在描述中做了一些修改,不,两个表之间没有关系。如果你能解释一下条件是什么,那么我们可以用一个查询来完成。
$userChoise = $request->answer;
$test = new Test;
$correctAnswers = DB::table('question')->where('correcte', $userChoise)->count();
$test->nbr_points = $correctAnswers * 10;
$test->save();