首页 > 解决方案 > 如何创建评分帖子?

问题描述

我有一个课程列表,每节课旁边都会有input type = "radio"从 1 到 10 分来评估该课的内容。我想单击单选按钮将获取该按钮的值并将该值保存到数据库中。但这似乎不起作用。

<tbody>
   @foreach($rates as $rate)
   <form method="post" action="{{url('/rating')}}">
   <input type="hidden" name="rateId" value="{{$rate->id}}">
      {{ csrf_field() }}
        <tr style="display: flex;">
          <td class="col-md-1"></td>
          <td class="col-md-6" style="text-align: left;"><a href="{{url('/bai-giang/'.$rate->id)}}">{{$rate->title}}</a></td>
          <td class="col-md-3" style="text-align: center;"></td>
          <td class="col-md-2">
          <div align="center" style="display: inline-flex;">
          <input type="radio" name="rating" value="1" onclick="return confirmAction()">
          <input type="radio" name="rating" value="2" onclick="return confirmAction()">
          <input type="radio" name="rating" value="3" onclick="return confirmAction()">
          <input type="radio" name="rating" value="4" onclick="return confirmAction()">
          <input type="radio" name="rating" value="5" onclick="return confirmAction()">
          <input type="radio" name="rating" value="6" onclick="return confirmAction()">
          <input type="radio" name="rating" value="7" onclick="return confirmAction()">
          <input type="radio" name="rating" value="8" onclick="return confirmAction()">
          <input type="radio" name="rating" value="9" onclick="return confirmAction()">
         <input type="radio" name="rating" value="10" onclick="return confirmAction()">
          </div>
       </td>
  </tr>
</form>
@endforeach
</tbody>

我的保存价值表单单选按钮的功能


    public function rating(Request $req)
        {
            $id = $req->rateId;
            $lesson = Lesson::find($id);
            $lesson->rating = $req->rating;
            $lesson->save();
            return redirect()->back()->with('success', 'Rating successful');
        }

标签: phplaravel

解决方案


标记中的name属性input对于所有单选按钮应该是相同的,并且您应该在获取选定值时使用该名称。

例子:

<input type="radio" name="rating" value="3" onclick="return confirmAction()">
<input type="radio" name="rating" value="4" onclick="return confirmAction()">

推荐阅读