Gebruikers die geen product aan winkelwagentje kunnen toevoegen als er niets is geselecteerd in Allow countries

Dit artikel verstrekt een flard voor bekende Adobe Commerce 2.4.4 met PHP 8.1 kwestie waar de gebruikers geen producten aan de kar kunnen toevoegen als toestaat Landen unselected is.

Beschrijving description

Omgeving

Adobe Commerce 2.4.4 met PHP 8.1

Probleem/symptomen

De gebruikers kunnen geen producten aan de kar toevoegen als Landen toestaat niet wordt geselecteerd.

Stappen om te reproduceren:

  1. Meld u aan bij de Commerce-beheerder.
  2. Ga naar Opslag > Configuratie > Algemeen > de Opties van het Land .
  3. Deselecteer alle opties op toestaat Landen gebied.
  4. Klik sparen Config om de configuratie te bewaren.
  5. Ga naar de winkel en probeer een product aan de winkelwagentje toe te voegen.

Verwacht Resultaat:

U kunt een product aan de kar toevoegen.

Ware Resultaat:

U kunt geen product aan de kar toevoegen. U krijgt de volgende consolefout:

Failed to load resource: the server responded with a status of 400 (Bad Request)
customer-data.js:87 Uncaught Error: [ object Object]
    at Object.<anonymous> (customer-data.js:87:23)
    at fire (jquery.js:3500:50)
    at Object.fireWith [ as rejectWith]  (jquery.js:3630:29)
    at done (jquery.js:9798:30)
    at XMLHttpRequest.<anonymous> (jquery.js:10057:37)

Oorzaak

De Adobe Commerce-configuratie haalt null op als een multi-select-configuratie geen geselecteerde items heeft. Deze configuratie wordt verder verwerkt in PHP versies ouder dan 8.1. Nochtans in PHP 8.1 werkt het niet behoorlijk toe te schrijven aan de fouten die door ​ worden veroorzaakt Null die tot niet-nullable argumenten van interne functies in PHP 8.1 ​ overgaan.

Resolutie resolution

Oplossing

Pas de volgende patch toe om het probleem op te lossen:

​ AC-2655-2-4-patch.zip ​

Hoe de pleister aanbrengen

Zie ​ flarden ​ in Commerce op de Gids van de Wolk voor instructies toepassen.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f