1641_Shourav Chy
1641_Shourav Chy

Reputation: 49

How can I store data in multiple rows in my SQL database in Laravel

I'm facing a problem while storing data...I'm using multiselect on my view and selecting multiple courses from that.

This is my View:

<div class="form-group">
          <label for="">Select Course </label>
          <select class="mul-select" multiple="true" name="course_code[]" id="group"class="form-control">Group ID's
            <option value="">Select Course Code</option>
            @foreach($courses as $c)
            <option value="{{$c->id}}">{{$c->course_title}}</option>
            @endforeach
            </select>
      </div>

My initial controller and it's not dynamic.I can select only there courses and store into my database through three foreign of same table.

 public function store(Request $r){
        $teacher_id = $r->teacher_id;
        $session = $r->session;
        $semester = $r->semester;
        $course1=NULL;
        $course2=NULL;
        $course3=NULL;
        $size =sizeof($r->course_code);
        if($size>0)
            $course1 = $r->course_code[0];
        if($size>1)
            $course2 = $r->course_code[1];
        if($size>2)
            $course3 = $r->course_code[2];
        $obj = new Assigncourse();
        $obj->teacher_id = $teacher_id;
        $obj->session = $session;
        $obj->semester =$semester;
        $obj->course1 =$course1;
        $obj->course2 = $course2;
        $obj->course3 = $course3;
        if($obj->save())
        {
            if($course1!=NULL)
            {$affected = DB::table('courses')
              ->where('id', $course1)
              ->update(['status' => 1]);
            }
            if($course2!=NULL)
            {$affected = DB::table('courses')
              ->where('id', $course2)
              ->update(['status' => 1]);
            }
            if($course3!=NULL)
            {$affected = DB::table('courses')
              ->where('id', $course3)
              ->update(['status' => 1]);
            }
            return redirect()->back()->with('msg','Succesfully Inserted');
        }
    }

Upvotes: 0

Views: 138

Answers (0)

Related Questions