У меня проблема с кодом "НЕОПРЕДЕЛЕННЫЙ ИНДЕКС"

Есть ссылка на мою предыдущую проблему, где находится код, может быть, это поможет вам Ошибка синтаксического анализа: синтаксическая ошибка, неожиданная '__construct' (T_STRING), ожидаемая функция (T_FUNCTION) или const (T_CONST)

это проблема, которую я получаю

Неопределенный индекс: элемент (вид: C: \ xampp \ htdocs \ laravel \ resources \ views \ shoppingCart.blade.php) эта ошибка есть <strong><?php echo e($product['item']['name']); ?></strong>

это мой маршрут

Route::get('shoppingCart', 'WebController@shoppingCart')->name('get.shoppingCart');

это в моем веб-контроллере

public function shoppingCart(){
  if (!Session::has('cart')){
    return view('shoppingCart');
  }
  $oldCart = Session::get('cart');
  $cart = new Cart($oldCart);
  return view('shoppingCart',['products'=>$cart->items]);
}

это ссылка на корзину

<li><a href = "{{ route('get.shoppingCart') }}">CART  <span class = "badge">{{Session::has('cart') ? '!' : ''}}</span></a></li>

А это мой код для shoppingCart

@extends('layouts.main')
@section('content')
@if (Session::has('cart'))
    <div>
        <div>
            <ul class = "list-group">
                @foreach($products as $product)
                <li class = "list-group-item"></li>
                <strong>{{$product['item']['name']}}</strong>
                <li><a href = "#">Odstrániť</a></li>
                @endforeach
            </ul>
        </div>
    </div>

@else
<div>
    <h2>V košíku nemáš žiadne položky!!!</h2>
</div>
@endif

@endsection

Здравствуйте, вы должны указать все детали, необходимые, чтобы ответить вам, так как это другой вопрос. По крайней мере, строка кода, в которой возникает ошибка, и полная ошибка (какой индекс не определен?)

Kaddath 21.12.2018 12:04

@Angelika Beňová: не понимаю вашего вопроса

user10186369 21.12.2018 12:06

@ AngelikaBeňová Если вы получите новую ошибку, задайте вопрос в соответствии с новой ошибкой. вы можете отредактировать свой вопрос и указать все детали в соответствии с ошибкой, тогда мы легко сможем вам помочь

Udhav Sarvaiya 21.12.2018 12:15

спасибо, я редактирую этот вопрос

Angelika Beňová 21.12.2018 12:40
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
4
73
1

Ответы 1

Во-первых, вы можете проверить, есть ли у вас данные по $ cart-> items при записи dd ($ cart-> items); на вашей функции. Следите за моими комментариями.

public function shoppingCart(){
  if (!Session::has('cart')){
    return view('shoppingCart');
  }
  $oldCart = Session::get('cart');
  $cart = new Cart($oldCart);

 //dd($cart->items) /*uncomment this and check if you have data or not if you have no then problem is  */
  return view('shoppingCart',['products'=>$cart->items]); /* on the other if you have data dont forget those line and look at my comment on blade.php */
}

Ваш blade.php

@extends('layouts.main')
@section('content')
@if (Session::has('cart'))
    <div>
        <div>
            <ul class = "list-group">
                @foreach($products as $product)
                <li class = "list-group-item"></li>
                <strong>{{$product['item']['name']}}</strong>



<!--Look at here you remembe you were add products writing `['products'=>$cart->items]` then you be care calling your datas first you be relay on your codes you are working array (it seems you are working with objects then you need to call it $products->item->name Secondly you remember on the function you were add your data `['products'=>$cart->items]` like this if there is no child items object on $cart->items then you need to call it like 

        foreach($products as $product))
        {
         echo $product->name; //if it is array then echo $product['name'];
        }

    -->
                    <li><a href = "#">Odstrániť</a></li>
                    @endforeach
                </ul>
            </div>
        </div>

    @else
    <div>
        <h2>V košíku nemáš žiadne položky!!!</h2>
    </div>
    @endif

    @endsection

Другие вопросы по теме