У меня есть таблица, отображаемая с данными из db, где в столбце состояния я оставил возможность изменить статус с помощью select. Я хочу иметь возможность обновить только столбец «статус», изменив параметры, и я хочу иметь возможность изменять несколько строк одной кнопкой. Раньше я могу изменить, но у меня должна быть кнопка для каждой строки.Обновление db с опциями выбора (Laravel 4)
// Код вида для столбца состояния выглядит следующим образом:
<td>
<select class="btn pull-left" name="status[]" id="status[]" onchange="javascript:changeStatus('{{$row->id}}','{{$arr}}')">
<option>{{ $row->status }}</option>
<option>Eligible</option>
<option>Not Eligible</option>
</select>
</td>
</tr>
<input name="recordid[]" id="recordid[]" type="hidden">
<?php $arr++;?>
@endforeach
<script type="text/javascript">
function changeStatus(id,arr){
//alert(id);
// $('#recordid['+arr+]').val(id);
// $("input[name='recordid']").eq(1).val(id);
$('[id^=recordid]').eq(arr).val(id);
// document.status.submit();
}
</script>
// Контроллер
public function select(){
$status = Input::get('status');
$id = Input::get('recordid');
// print_r($id);
// print_r($status);exit;
$user = User::find($id);
If (isset($status)){
$user->status = $status;
$user->save();
}
return View::make('search')->with('status',$status);
}
С print_r ид и статус я буду получать этот вывод, если я изменить параметры с идентификатором тоже, как в коде ниже, где я изменяю статус в массиве один и два.
Array ([0] => 2 [1] => 3 [2] => [3] =>) Array ([0] => Volunteer [1] => Volunteer [2] => Volunteer [ 3] => Приемлемые)
Благодарим вас за ответ @Viktor. Я применил это, но теперь я получил эту ошибку, хотя, когда я печатаю $ status или $ id, я получил массив. Ошибка: preg_replace(): несоответствие параметров, шаблон - строка, а замена - массив –
@EgzonnaGerguri, я изменил свой андер. Попробуйте этот вариант. – Viktor
сделал это, но я получаю еще одну ошибку: Аргумент 1 передан в Illuminate \ Database \ Grammar :: parameterize() должен быть из массива типов, заданной строки, вызываемой в C: \ xampp \ htdocs \ FYP Project \ vendor \ laravel \ framework \ src \ Illuminate \ Database \ Query \ Grammars \ Grammar.php в строке 311 и определен –