I have a problem I have 3 tables in which in the first two the data is saved correctly, but in the last table only the value of subject1 and code-subject1 are saved for each iteration of the for cycle, I think the problem is in the form of how I should save the indexes of the array in a single field of the table. I appreciate your help
My driver's code
$pensum = new Pensum ();
$pensum ->carrera = $request ->carrera;
$pensum ->regimen = $request ->regimen;
$pensum ->vigencia = $request ->vigencia;
$pensum ->numerosemestres = $request ->numerosemestres;
$pensum -> save();
for ($i = 0; $i < count($request->asignatura1) ; $i++) {
$semestre = array();
$semestre= new Semestre ();
$semestre->semestre = $request->numerodesemestre[$i];
$pensum ->semestre()->save($semestre);
$asignatura= new Asignatura ();
$asignatura->nombreasignatura= $request->asignatura1[$i];
$asignatura->codigoasignatura = $request->codigoasignatura1[$i];
$asignatura->nombreasignatura= $request->asignatura2[$i];
$asignatura->codigoasignatura = $request->codigoasignatura2[$i];
$asignatura->nombreasignatura= $request->asignatura3[$i];
$asignatura->codigoasignatura = $request->codigoasignatura3[$i];
$semestre->asignatura()->save($asignatura);
}
I have achieved the solution by replacing my cycle for now it saves all the subject data in only two fields of the subject table, independent of the number of semesters. Thanks for your help
if ($ request - > status == 3) {
$pensum = new Pensum ();
$pensum ->carrera = $request ->carrera;
$pensum ->regimen = $request ->regimen;
$pensum ->vigencia = $request ->vigencia;
$pensum ->numerosemestres = $request ->numerosemestres;
$pensum -> save();
for ($i = 0; $i < count($request->numerodesemestre) ; $i++) {
$semestre= new Semestre ();
$semestre->semestre = $request->numerodesemestre[$i];
$pensum ->semestre()->save($semestre);
$registro = Asignatura::create([ 'nombreasignatura' => $request->asignatura1[$i], 'codigoasignatura' => $request->codigoasignatura1[$i], ]
);
$semestre->asignatura()->save($registro);
$registro = Asignatura::create([ 'nombreasignatura' => $request->asignatura2[$i], 'codigoasignatura' => $request->codigoasignatura2[$i], ]);
$semestre->asignatura()->save($registro);
$registro = Asignatura::create([ 'nombreasignatura' => $request->asignatura3[$i], 'codigoasignatura' => $request->codigoasignatura3[$i], ]);
$semestre->asignatura()->save($registro);
}