#laravel
#laravel
Вопрос:
я хочу обновить статус получения до yes после того, как эти данные также вставят в другую таблицу несколько строк, я использую ajax
это мой контроллер
public function bulkupdate(Request $request, ItemPR $item_code)
{
if($request->ajax())
{
$item_code = $request->item_code;
$item = ItemPR::whereIn('item_code', explode(",", $item_code))->update(['received'=> 'yes']);
$data = [];
foreach($item as $value){
$data[] = [
'item_code' => $value->item_code,
];
}}
WarehouseInventory::insert($data);
return response()->json(['success'=>"Products Updated successfully."]);
}
но я получаю ошибку, подобную этой
invalid argument for suplied foreach
как это исправить?
пожалуйста, помогите
, спасибо
Комментарии:
1. Что такое
$pr_items
? Я бы поспорил, что это не итеративный элемент, какarray
. Если вы отправляете это из формы, является ли имя вводаitem_code
илиitem_code[]
?2. как это исправить, я новичок
3. Вы перебираете $pr_items, но то, как он назван, предполагает, что это всего лишь один код элемента.
4. я отредактировал свои вопросы,, пожалуйста, проверьте это,,, но та же ошибка
5. Вам нужно добавить
->get()
в конец вашего запроса, иначе это невозможно использовать вforeach
… Вам также необходимо ознакомиться с основами PHP и Laravel; это распространенные проблемы, которых можно избежать, зная, что такое переменная, как ее можно использовать или как провести рефакторинг, чтобы вы могли использовать ее по мере необходимости.