Недопустимый аргумент для каждого laravel при вводе нескольких строк

#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; это распространенные проблемы, которых можно избежать, зная, что такое переменная, как ее можно использовать или как провести рефакторинг, чтобы вы могли использовать ее по мере необходимости.