Переберите все флажки, затем отправьте статус в базу данных laravel 5.4. - PullRequest
0 голосов
/ 08 октября 2018

У меня есть таблица (см. Ниже), и я использую 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();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...