ad-pro.fr Posted October 30, 2022 Share Posted October 30, 2022 (edited) Bonjour, Je viens de faire la MAJ de Prestashop de la version 1.7.7.0 à la 1.8.7.2, qui s'est bien passé et sans aucun message d'alerte. Après cette mise à jours je peux accéder au Front office mais plus au back office. Je suis hébergé sur OVH La version PHP est 7.2, j'ai essayé de changer à 7.4 mais cela ne change rien. J'ai vidé les caches Quand j'accède à la page de connexion, je rentre mon ID et mot de passe, mais rien ne se passe, pas de message. Dans le front office, lorsque j'active le mode debug, j'obtiens ce message : *** (1/1) ContextErrorException Warning: Declaration of Cart::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = 'up', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, $preserveGiftRemoval = true) should be compatible with CartCore::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = 'up', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, bool $preserveGiftRemoval = true, bool $useOrderPrices = false) in Cart.php line 106 at ErrorHandler->handleError(2, 'Declaration of Cart::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = \'up\', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, $preserveGiftRemoval = true) should be compatible with CartCore::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = \'up\', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, bool $preserveGiftRemoval = true, bool $useOrderPrices = false)', '/home/etudescagz/www/override/classes/Cart.php', 106, array('className' => 'Cart', 'classDir' => '/home/etudescagz/www/'))in PrestaShopAutoload.php line 152 at require_once()in PrestaShopAutoload.php line 152 at PrestaShopAutoload->load('Cart')in DebugClassLoader.php line 159 at DebugClassLoader->loadClass('Cart') at spl_autoload_call('Cart')in FrontController.php line 443 at FrontControllerCore->init()in Controller.php line 287 at ControllerCore->run()in Dispatcher.php line 518 at DispatcherCore->dispatch()in index.php line 28 *** Est ce que quelqu'un aurais une idée pour me sortir de ce problème ? Merci d'avance. Edited November 1, 2022 by ad-pro.fr (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted October 30, 2022 Share Posted October 30, 2022 L’override de la classe Cart n’appelle pas comme il faut la méthode donc il faut corriger comme l’indique le message. Link to comment Share on other sites More sharing options...
ad-pro.fr Posted October 30, 2022 Author Share Posted October 30, 2022 Merci Mediacom87 pour votre réponse, Pourriez-vous m'en dire plus sur ce qu'il faut faire, quel fichier dois-je modifier ? Link to comment Share on other sites More sharing options...
Mediacom87 Posted October 30, 2022 Share Posted October 30, 2022 Cart::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = 'up', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, $preserveGiftRemoval = true Différent de : CartCore::updateQty($quantity, $id_product, $id_product_attribute = NULL, $id_customization = false, $operator = 'up', $id_address_delivery = 0, ?Shop $shop = NULL, $auto_add_cart_rule = true, $skipAvailabilityCheckOutOfStock = false, bool $preserveGiftRemoval = true, bool $useOrderPrices = false) donc corriger l'override /home/etudescagz/www/override/classes/Cart.php Pour mettre la bonne déclaration Link to comment Share on other sites More sharing options...
ad-pro.fr Posted October 30, 2022 Author Share Posted October 30, 2022 Merci pour l'explication mais je n'ai pas l'habitude de modifier les fichiers et je ne vois pas pourquoi ce fichier n'a pas été modifié lors de la mise à jours. Quelqu'un pourrait-il m'expliquer pas a pas ce que je dois modifier ? Link to comment Share on other sites More sharing options...
Mediacom87 Posted October 30, 2022 Share Posted October 30, 2022 Cette méthode de la classe Cart fut certainement surchargée par un module, peut-être que le module a la bonne version de la surcharge, mais le module ne gère peut-être cela que lors de son installation ou de sa mise à jour, là, vous avez mis à jour le cœur de PrestaShop maintenant, il faut contrôler tous les modules susceptibles d'avoir une version différente du code pour cette nouvelle version, sinon il faut adapter le code pour votre nouvelle version. Identifiez le module en question en lisant l'information, si elle est présente dans le fichier /override/classes/Cart.php Puis regardez dans le module s'il existe une version de l'override adapté à votre version, ou mettez à jour le module si vous n'avez pas la dernière version et si rien ne change alors, contactez le support du module en question. 1 Link to comment Share on other sites More sharing options...
ad-pro.fr Posted November 1, 2022 Author Share Posted November 1, 2022 Merci Mediacom87, Je comprends maintenant qu'effectivement, j'ai probablement une surcharge de la classe Cart du à un module spécifique "Module Configurateur avancé de produit sur-mesure par étape". Je vais demander au développeur de m'aider à résoudre ce problème. Merci encore pour votre aide. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now