У меня есть таблица (см. Ниже), и я использую eloquent для получения всех данных, основанных на ключе, на моем контроллере.
Моя таблица также содержит дубликаты в столбце ErrorID
FactorID
Столбец
Error Factor Attribute PK_ID Comment ErrorID FactorID AttID
X1 YY Att1 1
X1 YY Att2 2
X1 YY Att3 3
X2 ZZ Att4 4
X4 ZZ Att5 5
Данные представлены в следующем формате:
<h6>Error</h6>
<h5>related Factor</h5>
<type='checkbox'id='related attribute 1 value'>
<textarea id='related attribute 1 value comment'></textarea>
<type='checkbox'id='related attribute 2 value'>
<textarea id='related attribute 2 value comment'></textarea>
//... and so on
<h6>Error</h6>
<h5>related Factor</h5>
<input type='checkbox' id='related attribute 1 value'>
<textarea id='related attribute 1 value comment'></textarea>
<type='checkbox' id='related attribute 2 value'>
<textarea id='related attribute 2 value comment'></textarea>
//... and so on
Использование foreach
, на мой взгляд, для достижения этого:
@foreach($errorForView as $error)
<h5>{{$error['error']}}</h5>
@foreach($error['factors'] as $factor)
<h6>{{$factor['factor']}}</h6>
@foreach($factor['attributes'] as $attr)
<input type='checkbox' name='Att[]' value='{{$attr}}'>
<input type='textarea' name='comment[]' >
@endforeach
@endforeach
@endforeach
Однако я не могу опубликоватьобновить или вставить из сгенерированной формы в базу данных.
Я пытался собрать значения из всех запросов, используя []
(массив), но это вставило неверные данные в неправильном порядке в базу данных.
Как я могу пройти через каждый флажок, а затем собрать его значение, которое будет представлять значение моего атрибута, и пройти через каждую текстовую область, чтобы собрать данные для столбца комментариев в моей таблице
$num = count($request->input('Att'));
for ($i = 0; $i < $num; $i++) {
$att = (int)$request->input('Att')[$i];
$rowz= table::where('id', '=', $SN)->first();
if ($request->has('Att')[$i]) {
$row->Value = 0;
} else {
$row->Value = 1;
$row->Comment = $request->input('comment')[$i];
}
$row->save();
}