我有一个表格。在此,用户从单选按钮中选择值之一。从所有问题中我只能选择一个答案。但循环应该允许从每个问题中选择一个答案。
<form method="POST" action="{{url('quiz/check')}}"
{!! csrf_field() !!}
@foreach ($quiz as $q)
{{ $q->qid }}.
{{ $q->question }}<br>
<input type='radio' name='mycheck[".$q->qid."]' value='1'>
{{ $q->opt1 }}<br>
<input type='radio' name='mycheck[".$q->qid."]' value='2'>
{{ $q->opt2 }}<br>
<input type='radio' name='mycheck[".$q->qid'."]' value='3'>
{{ $q->opt3 }}<br>
<input type='radio' name='mycheck[".$q->qid'."]' value='4'>
{{ $q->opt4 }}<br><br>
@endforeach
<button type="submit" class="btn btn-default">Get result</button>
</form>
表单被重定向到此 Controller 。
public function check(Request $request)
{
$count=0;
$input=$request->all();
$ch = DB::select('select * from quiz where category="gk" ');
return View('quiz.check',['quiz'=>$ch,'input'=>$input,'count'=>$count]);
}
我有 $count 变量 0。每个正确答案都会增加 1。
View :quiz.check
@foreach ($quiz as $q)
@if($input['mycheck'][$q->qid]==$q->answer)
{
$count=$count+1;
}
@endif
@endforeach
You scored {{$count}}.
最佳答案
你必须这样使用:
<form method="POST" action="{{url('quiz/check')}}"
{!! csrf_field() !!}
@foreach ($quiz as $q)
{{ $q->qid }}.
{{ $q->question }}<br>
<input type='radio' name='mycheck_{{$q->qid}}' value='1'>
{{ $q->opt1 }}<br>
<input type='radio' name='mycheck_{{$q->qid}}' value='2'>
{{ $q->opt2 }}<br>
<input type='radio' name='mycheck_{{$q->qid}}' value='3'>
{{ $q->opt3 }}<br>
<input type='radio' name='mycheck_{{$q->qid}}' value='4'>
{{ $q->opt4 }}<br><br>
@endforeach
<button type="submit" class="btn btn-default">Get result</button>
</form>
关于php - 单选按钮无法与循环一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37138995/