Laravel:将数组插入表中

时间:2015-04-14 21:50:17

标签: php laravel laravel-4 eloquent laravel-5

我得到了这个代码,我可以为每个学生存储我的所有结果(现在,迟到,缺席,其他)。

这是我的观点

 <div align="center"><b>List of Students Enrolled</b></div>
  <table class="table table-striped table-bordered">
    <thead>
        <tr>
   <th>Student ID</th>
    <th>Student Name</th>
    <th>Present</th>
    <th>Late</th>
    <th>Absent</th>
    <th>Others</th>
    <th>Comments</th>

        </tr>
    </thead>

    <tbody>
        @foreach ($users as $users)
            <tr>
      <td>{{ $users->student_id  }} </td>
       <td>{{ $users->student_firstname  }} {{ $users->student_lastname  }}</td> 
    <td>{{ Form::radio('student['.$users->student_id.'][status]', 'present' , true) }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'late' ) }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'absent') }}</td>
<td>{{ Form::radio('student['.$users->student_id.'][status]', 'others') }}</td>
<td>{{ Form::text('student['.$users->student_id.'][comment]') }}</td>





          @endforeach

            </tr>
      {{ HTML::script('js/bootstrap.js'); }}

    </tbody>

</table>

这是我保存的控制器

 foreach(Subject1::where('section_name', 'like', Input::get('section_name'))->where('code','like',Input::get('subject_code'))->get() as $student){



  foreach (Input::get('student') as $studentId ) {


                $attendance = new Attendances();
                $attendance->status = $studentId['status'];
                $attendance->comment =  $studentId['comment'];
               $attendance->student_id = $student->student_id;
                $attendance->student_firstname =  $student->student_firstname;
                $attendance->student_lastname =  $student->student_lastname;
                $attendance->teacher_id = Auth::user()->id;
                $attendance->teacher_firstname = Auth::user()->firstname;
                $attendance->teacher_lastname = Auth::user()->lastname;
                $attendance->section_id = $student->section_id;
                $attendance->section_name = Input::get('section_name');
                $attendance->subject_id = $student->id;
                $attendance->subject_code = $student->code;
                $attendance->subject_name = $student->name;
                $attendance->date_recorded = Input::get('date');
                $attendance->save();



}


}

然而,当我在我的数据库中看到该表时,它显示了两个记录,其中 student1在当天本身以及学生2中存在和缺席(假设我在student1上输入并且在student2上缺席

请帮助:(

1 个答案:

答案 0 :(得分:0)

您似乎从输入中循环了几个学生,但也从循环外部合并了另一个学生模型。这可能是你的问题所在。

除此之外,您应该只将学生ID存储在考勤表上,而不是将所有学生数据存储在姓/名之外。考虑一下,如果有人改名,事情会变得多么糟糕。