Prestashop 1.6 1.7

Posté le 30 mars 2026 by

Erreur PrestaShop 1.6 : Impossible d’ajouter un produit au panier (Erreur 500 / textStatus error)

🧨 Symptôme

Sur certaines boutiques PrestaShop 1.6, l’ajout au panier ne fonctionne plus.
Ă€ la place, on observe :

  • Message cĂ´tĂ© navigateur :
    “Impossible to add the product to the cart – textStatus error”
  • Ou aucun message visible, mais le bouton ne rĂ©pond pas

🔍 Cause principale

Dans la majorité des cas, cette erreur est liée à une erreur 500 côté serveur lors de l’appel AJAX utilisé pour ajouter un produit au panier.

Cet appel se présente généralement sous la forme :

POST /?rand=XXXXXXXX

👉 Le paramètre rand est utilisé pour éviter le cache sur les requêtes AJAX du panier.

Si cette requête échoue → le panier ne se met pas à jour → erreur côté navigateur.


⚠️ Origine fréquente du problème

L’erreur 500 est très souvent causée par un module défaillant, en particulier :

👉 les modules de transporteurs (livraison)

Pourquoi ?

Lors de l’ajout au panier, PrestaShop :

  1. Crée / met à jour le panier
  2. Calcule les frais de livraison
  3. Appelle les modules de transport

➡️ Si un module plante à cette étape → erreur 500 → panier bloqué


đź’Ą Exemple concret

Une erreur typique peut ressembler Ă  :

Fatal error: Call to a member function query() on null

Cela indique qu’un module tente d’exécuter une requête sur un objet non initialisé (souvent base de données ou API externe).


đź§Ş Diagnostic rapide

1. Activer le mode debug

Modifier le fichier :

/config/defines.inc.php

Remplacer :

define('_PS_MODE_DEV_', false);

par :

define('_PS_MODE_DEV_', true);

👉 Cela affichera l’erreur exacte au lieu d’une simple page blanche.


2. Vérifier les requêtes AJAX

Dans le navigateur (F12 → onglet Network) :

  • Rechercher une requĂŞte contenant cart ou rand
  • VĂ©rifier :
    • statut = 500
    • contenu de la rĂ©ponse (erreur PHP)

đźšš Piste principale : les modules de transport

Une hypothèse très fréquente :

👉 Un module de transporteur provoque le crash

✔️ Test recommandé

  • DĂ©sactiver les modules de transport un par un
  • Tester l’ajout au panier Ă  chaque fois

⚡ Attention : piège classique

Désactiver un module ne suffit pas toujours.

Pourquoi ?

  • Le transporteur peut rester actif en base de donnĂ©es
  • PrestaShop continue alors de l’utiliser

🛠️ Solution rapide

1. Désactiver les transporteurs en base

Via phpMyAdmin :

UPDATE ps_carrier SET active = 0 WHERE external_module_name IS NOT NULL;

2. Réinitialiser les paniers

UPDATE ps_cart SET id_carrier = NULL;

3. Vider le cache

Supprimer :

/cache/smarty/compile/*
/cache/smarty/cache/*

đź”§ Autres causes possibles

Même si les transporteurs sont les plus fréquents, vérifier aussi :

  • Version PHP incompatible (PrestaShop 1.6 prĂ©fère PHP 5.6 Ă  7.1)
  • Module rĂ©cemment installĂ©
  • Override cassĂ©
  • Problème d’API externe (transport, paiement, etc.)

đź’ˇ Solution temporaire

Pour débloquer rapidement :

  • DĂ©sactiver tous les transporteurs dynamiques
  • CrĂ©er un transporteur simple (tarif fixe)

âś… Conclusion

L’erreur :

“Impossible to add the product to the cart – textStatus error”

est presque toujours liée à :

👉 une erreur 500 côté serveur
👉 causée par un module (souvent transporteur), par ex. nous avons déja rencontré le cas avec EnvoiMoinsChe v3.3.3


🧠 À retenir

  • Le panier dĂ©clenche des appels complexes (livraison, règles, modules)
  • Une seule erreur PHP suffit Ă  tout bloquer
  • Les modules de transport sont les premiers suspects

🔎 Conseil final

Toujours :

  1. Activer le mode debug
  2. Tester sans modules
  3. Vérifier les transporteurs actifs

👉 Cela permet d’isoler rapidement la cause et de rétablir le panier.

Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *