# Warenkorb Button immer wieder 0 € obwohl Artikel im Warenkorb

**URL:** <https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916>\
**Category:** Shopware 5\
**Tags:** general\
**Created:** [23. August 2021 um 14:06 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916 "2021-08-23T14:06:35Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [23. August 2021 um 14:06 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/1 "2021-08-23T14:06:35Z")

</div>

Hi zusammen,

ich habe bei uns immer wieder das Problem, dass der Warenkorb als leer angezeigt wird, obwohl Artikel im Warenkorb enthalten sind.

![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/b/b03944c446bb978d336af213456bc574bd2ae1db.png)

Wenn ich Artikel in den Warenkorb lege und ein wenig auf den anderen Seiten hin und her browse, wird mir der Warenkorb Button im Header oben immer wieder als leer angezeigt, obwohl bereits Artikel im Warenkorb liegen.

Öffne ich nun den Warenkorb über den Button im Header, werden mir die Artikel auch korrekt angezeigt. Diese verschwinden also nicht aus dem Warenkorb, er wird im Header aber trotzdem als leer dargestellt.

![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/5/533668703f01886b9c4bfe40a79f844a71670fd2.png)  
( Artikel wurde im Bild rausgeschnitten - die Anzeige ist korrekt )

Betrifft auch die Anzahl der Artikel beim Merkzettel Button im Header.

Der Fehler tritt aber extrem sporadisch auf und wirft keinerlei Fehlermeldungen oder ähnliches, was das Debugging extrem schwer macht 😕

Jemand eine Idee woran das liegen kann?

Wir verwenden Shopware 5.6.9, PHP 7.4.13 und Custom Theme usw.  
Mit dem Responsive Theme konnte ich das ganze bisher nicht nachstellen, was aber nichts heißen muss, weil ich das Verhalten auch mit unseren Themes nur unregelmäßig und sporadisch überhaupt reproduzieren kann.

* * *

Was ich bisher herausfinden konnte:

Der Fehler tritt immer dann auf, wenn das „nocache“ Cookie vor dem Aufruf der nächsten Seite gefehlt hat und dieser somit bei den Request Cookies fehlt. So lässt sich der Fehler auch manuell hervorrufen (zumindest für den nächsten Aufruf).

Die Frage ist nur, wieso fehlt dieses Cookie sporadisch?

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [24. August 2021 um 08:57 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/2 "2021-08-24T08:57:10Z")

</div>

Mittlerweile konnte ich dieses Problem auch mit dem responsive Theme in unserer Entwicklungsumgebung nachstellen.

Kann das irgendwie am Caching oder irgendwelchen Caching Einstellungen liegen? Irgendwelche Server Configs die falsch hinterlegt sind?

Über Tipps woran das liegen könnte, wäre ich sehr dankbar 🙂

// EDIT: Der Fehler lässt sich auch im Sicherheitsmodus und komplett ohne Plugins nachstellen 😕  
Mittlerweile kann ich mir nur noch irgendwelche Caching Einstellungen oder ähnliches vorstellen.

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [25. August 2021 um 07:30 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/3 "2021-08-25T07:30:05Z")

</div>

Hi iLuHa,

die Anzeige des Warenkorbwerts ist im Standard in [/themes/Frontend/Bare/widgets/checkout/info.tpl](https://github.com/shopware/shopware/blob/a9a4e2927d992c55748c9f3f0f1e3e3d1afacc5d/themes/Frontend/Bare/widgets/checkout/info.tpl) definiert, darin siehst Du dass der Wert aus der Variablen $sBasketAmount stammt.

Wenn Du nichts am Core gedreht hast, kann es in der Tat an deinen Cache-Einstellungen liegen. Backend \> Einstellungen \> Caches/Performance \> Caches/Performance. Reiter Einstellungen, unter Allgemein \> HTTP-Cache mal die Cache-Ausnahmen prüfen, da sollte ein Eintrag für checkout sein:

 ![Bild](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/4/4400e82d9f965c13445c12d908df4438d298b35f.jpeg)

LG Phil

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [25. August 2021 um 07:50 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/4 "2021-08-25T07:50:37Z")

</div>

Hi @phil,

danke für den Hinweis.

Am Core haben wir nur ein paar kleinere Bugfixes (aus dem Github Repo übernommen) eingebaut - als Zwischenlösung bis zum nächsten Update unseres Produktivsystems.  
Das waren aber eher die MwSt.-Themen ab 01.07.

Die Cache Einstellungen sollten so weit eig. passen, da wurde meines Wissens nach auch nichts verändert, lediglich „Nicht gecachte Controller Tags“ hinzugefügt für eigene Plugin Widgets.

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/2/209da0e4219788471a5cf1ce243e584c2c19d487.png)

In einem lokal frisch aufgesetzten SW 5.6.9 System konnte ich das Problem nicht nachstellen. Deshalb gehe ich hier mittlerweile entweder von irgendwelchen SW Einstellungen (in Bezug auf Cache oder ähnliches) oder aber irgendwelchen falsch konfigurierten Settings auf dem Root Server aus.

Im nächsten Schritt würde ich es mal damit versuchen ein SW Update (innerhalb einer Entwicklungsumgebung) einzuspielen und dann nochmal zu testen. Oder das Produktivsystem vom Server mal in ein lokales System zu kopieren und dort nochmal nachzustellen um den Bereich weiter eingrenzen zu können.

Aber so langsam gehen mir die Ideen aus ☹

Wo das ganze im Template liegt habe ich bereits gefunden und mir angesehen und auch entsprechend versucht zu debuggen.

Der Vorgang läuft ja so, Warenkorb Artikel werden in der DB hinterlegt (s\_orders\_basket) und via Session ID mit den User verknüpft. Wenn der Warenkorb (was ja nur sporadisch passiert) als leer angezeigt wird, fehlen die Variablen $sBasketAmount und $sBasketQuantity in der View. Die Session wird in den Fällen aber nicht zurückgesetzt und ganz normal geladen usw. In der DB ist währenddessen auch alles ganz normal vorhanden, es scheint also irgendwo zwischen Datenbank und „View“ verloren zu gehen.

Was mir hier noch aufgefallen ist beim reproduzieren des Fehlers:

- Sobald ich den Ajax-Warenkorb öffne / ihn mir ansehe - dort sind ja Artikel enthalten, auch wenn im Header oben 0 steht, dann funktioniert die Anzeige im Header beim nächsten Aufruf einer Seite zu 100%, anschließend wieder sporadisch.
- Nach Cache Leerung tritt das Problem erstmal nicht mehr auf, im Produktivsystem nur für kurze Zeit, im Dev-System teilweise bis zum nächsten Tag nicht mehr

Gruß iLuHa

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [25. August 2021 um 08:59 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/5 "2021-08-25T08:59:23Z")

</div>

> [@iLuHa](#):
>
> Wenn der Warenkorb (was ja nur sporadisch passiert) als leer angezeigt wird, fehlen die Variablen $sBasketAmount und $sBasketQuantity in der View.

Aha. Das ist allerdings sehr merkwürdig, denn die werden normalerweise immer gesetzt, das passiert in der [Bootstrap.php](https://github.com/shopware/shopware/blob/a9a4e2927d992c55748c9f3f0f1e3e3d1afacc5d/engine/Shopware/Plugins/Default/Core/ControllerBase/Bootstrap.php)  
Da hast Du ja schon mal einen Ermittlungsansatz 🙂

LG Phil

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [25. August 2021 um 09:40 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/6 "2021-08-25T09:40:21Z")

</div>

Sorry, da habe ich mich vielleicht falsch ausgedrückt 😉  
Die Variablen an sich sind in dem Fall schon vorhanden, aber eben „0“.

Im Screenshot oben → wenn der sporadische Fehler auftritt.  
Im Screenshot unten → wenn der Fehler nicht auftritt - ein Aufruf später …

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/d/defafc2ee7802fd9dbd07f2a8b41acf066a5b734.png)

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [25. August 2021 um 11:18 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/7 "2021-08-25T11:18:36Z")

</div>

Und SessionID ist in beiden Fällen gesetzt?

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [25. August 2021 um 11:49 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/8 "2021-08-25T11:49:55Z")

</div>

Korrekt, die SessionID ist in beiden Fällen vorhanden.

Ich hab in der `engine/Shopware/Controllers/Widgets/Checkout.php` mal ein paar Variablen gesetzt fürs Debugging …

```auto
$view->assign('debugSessionBasketQuantity', $this->session->sBasketQuantity);
$view->assign('debugSessionBasketAmount', $this->session->sBasketAmount);
$view->assign('debugSessionId', $this->session->get('sessionId'));

```

Was dann in der Ausgabe so aussieht, wenn der Fehler mal auftritt:

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/6/6d4ba2747305943c04b2538a76eaaf226ff6d597.png)

Auf irgendeine Weise muss dieses Problem mit dem HTTP-Proxy-Cache zusammenhängen, denn wenn ich diesen leere / lösche, tritt der Fehler für eine gewisse Zeit nicht mehr auf.  
Wie gesagt, im Dev-System für längere Zeit (teilweise erst am nächsten Tag wieder), aber im Produktivsystem kommt es innerhalb kürzester Zeit wieder.

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [25. August 2021 um 13:32 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/9 "2021-08-25T13:32:59Z")

</div>

Ok, also was ich nun als „Unterschied“ ausmachen konnte ist folgendes:

- das Problem tritt nur auf, wenn das `nocache` Cookie bei den Request Cookies fehlt!
- das `nocache` Request Cookie fehlt aus irgendeinem Grund sporadisch

Außerdem ist dadurch auch die Anzeige für die Anzahl der Artikel im Merkzettel mit betroffen.  
Es wird also immer wenn das Problem auftritt, sowohl kein Warenkorb Inhalt als auch ein Merkzettel ohne Artikel darin angezeigt.

In der nächsten Abfrage funktioniert es dann aber zum Teil wieder…  
Aktuell komme ich noch nicht auf den Grund dafür.

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [25. August 2021 um 22:31 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/10 "2021-08-25T22:31:00Z")

</div>

Du nutzt Symfony als Cache, richtig?  
Was steht denn in deiner config.php drin? Vgl. [Shopware HTTP cache](https://developers.shopware.com/developers-guide/http-cache/#config)  
In dieser Doku steht auch drin, wie man den Cache debuggen kann.

So langsam gehen mir jetzt auch die Ideen aus… aber sieht irgendwie nach einem Problem mit den ESI requests aus, schalte bitte mal den debug für den Cache ein und prüfe die X-… Werte im Response Header

LG Phil

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [26. August 2021 um 08:51 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/11 "2021-08-26T08:51:55Z")

</div>

Ja, müsste der Symfony Cache sein. Mir wäre nicht bekannt, dass es vom Standard abweicht.  
Die Config für den httpcache ist bei uns komplett auf Standard.

Den Debug habe ich in unserer Entwicklungsumgebung bereits aktiviert. Worauf genau soll ich bei den X-Werten im Response Header achten?

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [26. August 2021 um 10:07 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/12 "2021-08-26T10:07:09Z")

</div>

Ich habe jetzt mal die Response Header bei den beiden Aufrufen vergleichen.  
Einmal mit leer angezeigtem Warenkorb und einmal mit korrekt angezeigtem Warenkorb.

Bei den X-Werten gibt es wohl keinerlei Unterschiede.  
Es gibt aber folgende Unterschiede im Response Header:

**`cache-control` Parameter:**  
Bei einem korrekten Aufruf sind hier die Werte „no-store, no-cache, must-revalidate, no-cache, private“ enthalten. Bei einem leeren Warenkorb lediglich „no-cache, private“.

**`set-cookie`:**  
Beim leeren Warenkorb fehlt der Eintrag für `set-cookie` mit dem Wert für die `session-<shopId>`

Im Request Header ist aber der Cookie mit der Session enthalten (in beiden Fällen). Beim leeren Warenkorb fehlt dort aber der Cookie für `no-cache=checkout-<shopId>`

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [26. August 2021 um 14:26 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/13 "2021-08-26T14:26:25Z")

</div>

Keine Ahnung wieso, aber scheinbar bekomme ich im Response immer wieder folgendes:  
 ![image](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/2X/b/b3644827fe6715bb25918bcbe3671eb8f1eeccbb.png)

Dies scheint dann im Browser den Cookie zu löschen, was dazu führt, dass er beim nächsten Request nicht mehr enthalten ist und somit der Warenkorb wieder leer angezeigt wird.

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [27. August 2021 um 13:36 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/15 "2021-08-27T13:36:43Z")

</div>

Hmm. Prüf mal noch folgendes:

- Im Backend, unter Einstellungen \> Systeminfo, haben alle Einträge der ersten drei Tabs ein grünes Häkchen?
- Welche Cookies sind im SW Cookiemanager (Frontend - Cookieeinstellungen) aktiviert?
- Tritt das Problem auch mit anderen Browsern auf? Browser evtl im Private Mode?

LG Phil

---

<div class="post-metadata">

**Author:** ![lanaii](https://avatars.discourse-cdn.com/v4/letter/l/bc79bd/32.png) [@lanaii](https://forum.shopware.com/u/lanaii)\
**Post date:** [28. August 2021 um 09:55 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/16 "2021-08-28T09:55:21Z")

</div>

Wir haben ein ähnliches Problem, was aber eher die Preisanziege betrifft, sowie den Warenkorb wert selbst.dachten erst es kam durch ein Plugin, Doch der Entwickler des Plugins hat sich unseren Shop angesehen, und meinte das von Shopware die Session Cookies gelöscht werden, obwohl wir die Sessions in der Config auf 24std gestellt haben.  
Problem tritt trotzdem immer wieder auf.

Wer gut wenn ein Entwickler seitens Shopware mal die Sessions kontrollieren könnte

---

<div class="post-metadata">

**Author:** ![phil](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/phil/32/13661_2.png) [@phil](https://forum.shopware.com/u/phil)\
**Post date:** [28. August 2021 um 12:39 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/17 "2021-08-28T12:39:41Z")

</div>

Nochwas, habt ihr die Option Login Cookie an?  
Vgl. [[Gelöst] : Shopware Fronend Session / Cookie geht beim Schließen des Tabs kurzzeitig verloren](https://forum.shopware.com/t/gelost-shopware-fronend-session-cookie-geht-beim-schliessen-des-tabs-kurzzeitig-verloren/58108)

LG Phil

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [30. August 2021 um 06:06 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/18 "2021-08-30T06:06:56Z")

</div>

> - Im Backend, unter Einstellungen \> Systeminfo, haben alle Einträge der ersten drei Tabs ein grünes Häkchen?

→ Ja, alles grün bis auf 2 Dateien bei denen ich manuelle Bugfixes aus neueren Shopware Versionen eingebaut habe (Fehler trat aber auch vorher schon auf). Im frisch aufgesetzten System mit dem ich den Fehler ebenfalls reproduzieren konnte, war nichts angepasst - alles in Original-Zustand und somit auch alle Häkchen grün.

> - Welche Cookies sind im SW Cookiemanager (Frontend - Cookieeinstellungen) aktiviert?

→ ich habe hauptsächlich mit den „technisch erforderlichen“ Cookies getestet. Es lässt sich aber auch reproduzieren, wenn man alle Cookie Arten akzeptiert

> - Tritt das Problem auch mit anderen Browsern auf? Browser evtl im Private Mode?

→ Fehler tritt in unterschiedlichen Browsern (getestet mit Brave / Chrome, Firefox und Edge), sowohl im normalen als auch im privaten Modus, so wie bei mehreren Usern an mehreren Geräten (auch auf mobilen Geräten).  
 → Interessanterweise tritt der Fehler nicht bei allen Usern / Browsern zeitgleich auf, sondern teilweise mit Verzögerung. Oder ist bei einem User reproduzierbar, beim anderen aber nicht (meist nachdem der SW Cache gelöscht worden ist).

> Nochwas, habt ihr die Option Login Cookie an?

→ Den haben wir nicht aktiviert - konnte den Fehler aber sowohl mit dem Login Cookie als auch ohne nachstellen.

* * *

Ich hab mir jetzt mal noch eine SW 5.7.2 Instanz aufgesetzt und versuche es damit nochmal nachzustellen.

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [1. September 2021 um 09:36 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/19 "2021-09-01T09:36:58Z")

</div>

Also mit einer Kopie unserer Produktivumgebung + Update auf Version 5.7.2 kann ich das Problem in dem entsprechenden Staging System nicht mehr reproduzieren.

Nachdem mit 5.7.0 die Zend\_Session durch die Symfony\_Session ersetzt wurde, könnte das evtl. damit zusammenhängen.

Wir werden also wohl noch ein wenig bis zum nächsten Update am Produktivsystem warten müssen um das Problem wieder los zu werden.

* * *

Ok, muss meine Aussage leider revidieren. Meine Kollegen konnten das Problem nun auch in unserem neuen Dev-System auf v5.7.2 reproduzieren. Es muss also doch an irgendetwas anderem liegen 😕

---

<div class="post-metadata">

**Author:** ![iLuHa](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/iluha/32/8191_2.png) [@iLuHa](https://forum.shopware.com/u/iLuHa)\
**Post date:** [28. Oktober 2021 um 12:26 UTC](https://forum.shopware.com/t/warenkorb-button-immer-wieder-0-obwohl-artikel-im-warenkorb/89916/20 "2021-10-28T12:26:59Z")

</div>

Gibt hier wohl auch ein entsprechendes Ticket zu dem Thema: [Shopware Issuetracker](https://issues.shopware.com/issues/SW-24009)

Leider aber schon seit ~2,5 Jahren offen.  
Wäre nett, wenn der eine oder andere das Ticket hoch-voten würde 😉
